//查找全部
Criteria cr= session.createCriteria(Users.class);
//添加各种条件
//1 LIKE查询
Criterion c1= Expression.like("name","t%");
//2 等于 age=12
Criterion c2 = Expression.eq("age", 12);
//3 大于 age>12
Criterion c3 = Expression.gt("age", 12);
//4 不等于 age!=12
Criterion c4 = Expression.not(Expression.eq("age", 12));
//5 age为空
Criterion c5 = Expression.isNull("age");
//6 in语句
Criterion c6 = Expression.in("name", new String[]{"tome","jack","jerry"});
//7 between 语句
Criterion c7 = Expression.between("age", 12, 15);
//8 以t开头,长度为3的名字,并且忽略大小写
Criterion c8 = Expression.like("name", "t_ _").ignoreCase();
//添加查询条件并按age降序排列
cr.add(c1).addOrder(Order.desc("age"));
cr.add(c2);
方法二:将查询语句存入相应的配置文件中,这样可以在程序中调用
<query name="look">
<![CDATA[
from Users
]]>
</query>
<!-- 带参数的 -->
<query name="lookName">
<![CDATA[
from Users p where p.name =:name
]]>
</query>
在程序中这样调用
Query query=session.getNamedQuery("lookName");
query.setString("name","tom");
List list=query.list();
//List list=cr.list();
for (Iterator iterator = list.iterator(); iterator.hasNext();) {
Users element = (Users) iterator.next();
System.out.println(element.getName());
}
分享到:
相关推荐
QBC是Hibernate提供的一种基于对象的查询方式,与HQL(Hibernate Query Language)类似,但更接近Java的API,允许我们根据对象的属性来构建查询条件。在进行分页查询时,QBC提供了`setFirstResult()`和`...
本教程将深入探讨Hibernate中的两种查询方式:HQL(Hibernate Query Language)和QBC(Query By Example)。通过实例开发,我们将了解这两种查询方法的使用和它们之间的差异。 首先,HQL是Hibernate专门设计的一种...
本文将详细介绍Hibernate的五种查询方式,包括HQL查询、Criteria方法、动态查询DetachedCriteria、例子查询、SQL查询以及命名查询,以满足不同场景下的需求。 1. HQL查询: Hibernate Query Language(HQL)是一种...
**Hibernate查询方法大全** Hibernate,作为Java领域中最流行的持久化框架之一,提供了多种查询数据的方法。这些方法使得开发者能够高效地从数据库中检索、更新和删除数据,无需编写大量SQL语句。本篇文章将深入...
本教程将深入探讨Hibernate中的查询机制,包括HQL(Hibernate Query Language)和QBC(Query by Criteria)。通过实例代码和详细解释,我们将了解如何高效地在数据库中检索数据。 ### Hibernate查询语言(HQL) ...
在本文中,我们将深入探讨如何...这个简单的例子展示了Spring Boot与Hibernate结合的强大之处,使我们能快速开发出具有分页功能的数据查询API。在实际项目中,还可以根据需求进一步优化,例如添加排序、过滤等功能。
在 Hibernate 中进行查询是其核心功能之一,本文将详细介绍 Hibernate 的几种查询方式,包括 HQL (Hibernate Query Language) 查询、QBC (Query By Criteria) 查询以及 QBE (Query By Example) 查询,并结合示例代码...
### Hibernate中的HQL与QBC查询详解 #### 一、引言 Hibernate作为一个强大的对象关系映射(ORM)框架,极大地简化了Java开发者与数据库交互的过程。本文将深入探讨Hibernate中两种常用的查询语言——HQL...
以下是一个QBC查询的例子: ```java Criteria criteria = session.createCriteria(User.class); criteria.add(Restrictions.eq("name", "zx")); criteria.add(Restrictions.eq("age", new Integer(27))); List...
Hibernate提供了多种方式来查询数据,包括HQL、QBC和本地SQL。 - **HQL (Hibernate Query Language)**:一种面向对象的查询语言,类似于SQL但更加面向对象。 - **QBC (Query By Criteria)**:基于标准的API提供了一...
- 讲解如何使用HQL或QBC进行查询替换。 - **3.4.6 Hibernate的统计(statistics)机制** - 说明如何启用和查看Hibernate的统计信息。 - **3.5 日志** - 介绍如何配置日志框架以记录Hibernate的操作。 - **3.6 ...
2. **QBC查询方式**:Query By Criteria,通过标准接口创建查询,适用于复杂的条件组合。 3. **本地SQL查询方式**:直接使用数据库特定的SQL语句进行查询,提供最大灵活性。 4. **OID查询方式**:Object Identifier...
5. `hibernate_2600_QBC`:Criteria查询的例子,展示了如何使用Criteria API来构建动态查询。 四、应用场景 1. 大型企业级应用:在大型系统中,由于数据库操作频繁,使用Hibernate可以提高开发效率,减少出错概率。...
这个例子中,我们创建了一个名为“Tom”的猫的示例对象,并使用它作为查询的基础,以找到所有名字为“Tom”的猫。 #### 五、原生SQL查询 虽然HQL和QBC/QBE提供了丰富的查询功能,但在某些情况下,使用原生SQL可能...
Hibernate Query Language(HQL)是Hibernate官方推荐的查询语言,它是面向对象的,与SQL类似,但更加符合Java编程的思维。HQL使得开发者能够更方便地处理对象关系映射,而无需直接编写SQL语句。在使用HQL时,我们...
1. **标准查询简介(QBC:Query By Criteria)** Criteria API 的核心在于`Criteria`对象,它是通过`Session`的`createCriteria()`方法创建的。以下是一个简单的例子,查询所有`Employee`类的实例: ```java ...
此外,Hibernate支持QBC(Query By Criteria)查询,这是一种基于Java API的查询方式,同样允许开发者以面向对象的方式进行数据检索。在配置文件中,我们可以定义HQL或SQL语句,然后在程序中通过SessionFactory和...
本篇将深入讲解在Hibernate中常用的查询语句,包括HQL(Hibernate Query Language)和QBC(Query By Criteria)两种方式。 1. HQL(Hibernate Query Language)是面向对象的查询语言,它允许开发者以类和属性的名字...
HQL支持命名参数和位置参数,例如上面的例子展示了如何通过`createQuery()`创建HQL查询,并使用`setParameter()`或`setParameterList()`设置参数。`uniqueResult()`用于获取单个结果,`list()`则用于获取结果集。 3...
- **QBC(Query By Example)**: 根据示例对象进行查询,适用于简单的查询场景。 - **CriteriaBuilder**: JPA 2.0引入的新特性,提供了更灵活的构建查询的方式。 5. **事务管理** - **Transaction API**: ...