分页:
其实标准查询的分页很简单,在Criteria中提供了两个方法,setFirstResult方法和setMaxResults,一个是数据的开始位置0表示第一条记录,一个是返回的记录数。
public void searchByPropertys() { Session session = this.getSession(); Criteria crit = session.createCriteria(Conft.class); crit.setFirstResult(0); crit.setMaxResults(10); List<Conft> list = crit.list(); for(Conft conft : list){ System.out.println(conft.getId()); } }
这样会返回数据库前十条记录!
返回一条记录:
Criteria接口的uniqueResult方法返回一个Object对象,如果没有查到数据则返回null。
public void searchByPropertys() { Session session = this.getSession(); Criteria crit = session.createCriteria(Conft.class); crit.add(Restrictions.eq("id", 2)); // = Conft conft = (Conft)crit.uniqueResult(); System.out.println(conft.getId()); }
如果调用时返回的不是一条记录,会爆出异常!
排序:
Oder对象的asc和desc静态方法能满足这个需求
public void searchByPropertys() { Session session = this.getSession(); Criteria crit = session.createCriteria(Conft.class); crit.addOrder(Order.desc("id")); List<Conft> list = crit.list(); for(Conft conft : list){ System.out.println(conft.getId()); } }
请您到ITEYE看我的原创:http://cuisuqiang.iteye.com
或支持我的个人博客,地址:http://www.javacui.com
相关推荐
通过`Criteria`,可以创建、过滤和排序查询结果,同时支持多种查询条件和逻辑操作。 #### 模糊查询的实现 模糊查询通常用于当查询条件不精确时,例如用户可能只记得某部分信息,或者需要查找包含特定子串的记录。...
在给定的部分内容中,首先展示的是如何使用Criteria进行排序查询。例如,如果想获取用户列表并按照年龄升序排列,可以这样实现: ```java Criteria criteria = session.createCriteria(User.class); criteria....
Criteria API 提供了多种方法来构建复杂的查询,包括添加条件、排序、分页以及使用统计函数等。 1. 创建 Criteria 对象: ```java Criteria criteria = session.createCriteria(Guestbook.class); ``` 这个语句...
5. **分页**:通过`Criteria.setFirstResult()`和`Criteria.setMaxResults()`实现分页查询,前者指定从哪一条开始,后者指定最多返回多少条。 6. **投影**:Criteria查询不仅可以获取完整的对象,还可以进行投影...
一个超好用的Hibernate查询工具类通常会封装一些常见的查询方法,例如根据ID获取单个对象、根据条件获取对象列表、分页查询等。这样的工具类可以大大减少代码重复,提高代码的可读性和可维护性。 以下是一些可能...
6. **排序查询**:`Order`接口可以用来设置查询结果的排序,`Criteria`提供`addOrder()`方法添加排序规则。 7. **事务管理**:为了确保数据的一致性,公共查询类中的每个方法应包裹在`Transaction`中,处理异常时...
通过`Criteria`对象,可以添加查询条件、排序规则,甚至子查询,最终调用`list()`或`uniqueResult()`获取结果。 5. **Query API** HQL(Hibernate Query Language)允许开发者使用面向对象的语言进行查询,其语法...
通过配置`@JoinTable`、`@JoinColumn`或`@ManyToMany`注解,我们可以指定实体间的关联关系,从而让Hibernate执行单个SQL联合查询,减少网络延迟。 2. **二级缓存配置**: Hibernate的二级缓存能存储已查询过的数据...
通过DetachedCriteria、Criteria、Projection等接口,可以方便地实现联表查询,同时支持各种查询条件、排序和分页。 6. **多对一(One-to-Many)和一对多(Many-to-One)关联** 这是两种常见的关联关系。在...
可以使用Hibernate的Criteria API或Query API来实现动态查询。 ### 五、HQL与JPA的Query接口 在Java Persistence API(JPA)中,Query接口提供了与HQL相似的功能。开发者可以使用`createQuery()`方法创建基于HQL的...
Criteria查询是Hibernate提供的另一种查询方式,相比HQL(Hibernate Query Language),它更加面向对象,允许动态构建查询。Criteria查询主要涉及以下组件: 1. `Session.createCriteria(Class clazz)`: 创建...
【hibernate_first6项目源码】是一个关于Hibernate框架的示例项目,它在之前的版本基础上增加了使用Criteria接口进行查询的功能。Hibernate是一个流行的Java对象关系映射(ORM)框架,它简化了数据库操作,允许...
Hibernate提供了Criteria API,一种更加面向对象的查询方式,无需编写SQL,就能完成复杂的查询需求。它允许通过构建Criteria对象和限制条件来执行查询。 6. **HQL(Hibernate Query Language)** HQL是Hibernate...
本话题将探讨如何利用Zookeeper(zk)与Hibernate结合来实现分页查询。Zookeeper是一个分布式协调服务,而Hibernate则是一个流行的Java对象关系映射(ORM)框架,它们的结合可以为分布式环境下的数据处理提供强大...
《Hibernate的使用与Criteria查询详解》 Hibernate,作为Java领域中的一个强大ORM(对象关系映射)框架,极大地简化了数据库操作,使得开发者可以专注于业务逻辑而无需过多地关心SQL语句的编写。本篇文章将深入探讨...
这样可以实现分页查询,`setFirstResult()` 设置起始位置,`setMaxResults()` 设置每页最大记录数。 1.6 **子查询**: ```java String hql = "from User user where user.loginName " + "not in(select ur.user....
- **读取(Read)**:使用Session的get()或load()方法获取单个对象,或者使用Query或Criteria API执行SQL查询返回列表。 - **更新(Update)**:找到要修改的对象,改变其属性,然后调用Session的update()方法。 ...
HQL支持复杂的查询条件、分页、排序等功能。同时,Hibernate还支持Criteria API,提供另一种动态构建查询的方式。 8. Criteria查询 Criteria API 提供了一个更加面向对象的查询方式,它允许在运行时动态构建查询。...
7. **Query和Criteria API的使用**:通过`Session`对象的`createQuery()`或`createCriteria()`方法创建查询,然后设置参数、排序、分页等,最后调用`list()`、`uniqueResult()`等方法执行查询。 8. **事务管理**:...