以下是从帮助文档中复制过来的。
特别要注意版本属性、标识符和关联被忽略。
默认情况下值为null的属性将被排除。
如果你的持久类的属性有int等类型,则须给它赋值,因为默认情况下它的值不是null,而是0。
当然这里也可以自己去设置example,比如.excludeZeroes() .excludeProperty()
详见下文
当为一个criteria构建一个Example事例查询时,也可以同时增加其他的约束。
查询示例
org.hibernate.criterion.Example类允许你通过一个给定实例 构建一个条件查询。
Cat cat = new Cat(); cat.setSex('F');
cat.setColor(Color.BLACK);
List results = session.createCriteria(Cat.class) .add( Example.create(cat) ) .list();
版本属性、标识符和关联被忽略。默认情况下值为null的属性将被排除。
你可以自行调整Example使之更实用。
Example example = Example.create(cat) .excludeZeroes() //exclude zero valued properties
.excludeProperty("color") //exclude the property named "color"
.ignoreCase() //perform case insensitive string comparisons
.enableLike(); //use like for string comparisons
List results = session.createCriteria(Cat.class) .add(example) .list();
你甚至可以使用examples在关联对象上放置条件。
List results = session.createCriteria(Cat.class) .add( Example.create(cat) ) .createCriteria("mate") .add( Example.create( cat.getMate() ) ) .list();
分享到:
相关推荐
标题"Hibernate_QBC和Hibernate_QBE"提及了两个关于Hibernate的查询方式,即Query By Criteria(QBC)和Query By Example(QBE)。Hibernate是Java领域中一个广泛使用的对象关系映射(ORM)框架,它允许开发者以面向...
4. QBE(Query By Example):QBE是一种简单且直观的查询方式,它允许开发者通过实例化一个对象并设置其属性来构造查询条件。Hibernate会自动将对象的属性值转换为查询条件,查找数据库中与该对象属性相匹配的记录。...
QBC(Query By Example)和QBE(Query By Example)是两种在ORM(Object-Relational Mapping)框架中,特别是Hibernate中使用的查询方法。这两种查询方式都是为了简化SQL语句的编写,使得开发者能更专注于业务逻辑,...
3. **s2sh_relation22_QBE.zip**: QBE(Query By Example)是Hibernate的另一种查询方式,它允许根据一个对象实例来构建查询。这个压缩包可能包含了关于QBE的示例,帮助你理解如何基于对象实例进行查询。 通过学习...
在 Hibernate 中进行查询是其核心功能之一,本文将详细介绍 Hibernate 的几种查询方式,包括 HQL (Hibernate Query Language) 查询、QBC (Query By Criteria) 查询以及 QBE (Query By Example) 查询,并结合示例代码...
本文将深入解析五种主要的Hibernate查询方法:QBE(Query By Example)、QBC(Query By Criteria)、HQL(Hibernate Query Language)、本地SQL查询以及QID(Query by Identifier)。 1. QBE(Query By Example) ...
本文主要探讨Hibernate中的查询语言,包括面向对象的查询语言HQL,QueryBy Criteria (QBC),Query By Example (QBE),以及原生SQL的使用。 1. **大小写敏感性** HQL查询语句对Java类和属性名称的大小写敏感,而...
**三、Hibernate的查询方式** 1. **HQL(Hibernate Query Language)**:类似于SQL,但面向对象,支持条件查询、分页、连接查询和嵌套查询。 2. **QBC(Query By Criteria)**:基于对象的查询,通过Criteria API...
4. **灵活的查询方式**:Hibernate提供了多种查询方式,包括Criteria API、Query By Example (QBE)、Hibernate Query Language (HQL)以及原生SQL等。 #### 三、Hibernate架构概览 **Hibernate架构**是围绕着几个...
- 这两种查询方式提供了基于对象和示例的查询接口,简化了复杂查询的编写。 在学习Hibernate时,掌握核心概念、熟练配置环境、理解ORM映射和CRUD操作至关重要。同时,关注官方文档、实践项目开发和不断探索新版本...
它支持多种查询方式,包括面向对象的查询语言(HQL)、条件查询(Query By Criteria, QBC)、示例查询(Query By Example, QBE)以及原生SQL查询等。 #### 二、面向对象查询语言 (HQL) HQL是一种类似SQL的语言,但...
3. `hibernate_2700_QBE`:Query By Example的实例或教程,演示如何根据对象实例进行查询。 4. `hibernate_2400_QL_2`:可能是对HQL的补充,涉及更复杂的查询模式,如集合操作或自定义函数。 5. `hibernate_2600_QBC...
2. **Hibernate的查询方式**: - **HQL**(Hibernate Query Language):一种面向对象的查询语言,类似于SQL,但更接近于Java对象的语法结构。 - **QBC**(Query By Criteria):通过Criteria API来构建查询条件。...
Criteria 查询机制主要包括 QBE(Query By Example)、QBC(Query By Criteria)和 HQL(Hibernate Query Language)三种方式。 QBE(Query By Example) QBE 是一种基于示例的查询机制,它可以根据一个示例对象来...
Hibernate提供了多种查询方式,包括: 1. HQL(Hibernate Query Language):面向对象的查询语言,类似于SQL,但操作的是对象而非表格。 2. Criteria API:提供一种类型安全的API,用于动态构建查询条件。 3. Query ...
- **QBE**: Query By Example,通过示例对象来进行查询。 #### 事务隔离级别与锁机制 - 事务隔离级别是指数据库系统为事务提供的隔离程度,主要包括读未提交、读已提交、可重复读和串行化四个级别。 - **乐观锁** ...
7. **查询语言**: Hibernate支持多种查询语言,包括原生SQL、HQL(Hibernate Query Language)、EJB QL、QBC(Query By Example)和QBE(Query By Example)。HQL更接近面向对象的查询,而EJB QL是Java EE的一部分,...
在Java的持久化框架Hibernate中,Criteria API提供了一种动态构造SQL查询的方式,它允许开发者在运行时构建灵活的查询,而无需预先编写HQL(Hibernate Query Language)语句。Criteria API提供了丰富的功能,包括...
在Java的持久化框架Hibernate中,Criteria API是一种用于构建动态查询的强大工具,它允许开发者以编程方式构建查询,而不是直接写SQL语句。下面将详细解释Criteria API的使用及其相关概念。 1. Query By Example ...