SSH框架之Hibernate的Criteria 查询、本地SQL查询、分页查询
2016-12-29 13:49
507 查看
一、Criteria 查询
二、SQLQuery, 本地SQL查询
三、分页查询
1、代码:
2、运行结果:
二、SQLQuery, 本地SQL查询
三、分页查询
1、代码:
package sram.query; import java.util.List; import org.hibernate.Criteria; import org.hibernate.Hibernate; import org.hibernate.Query; import org.hibernate.SQLQuery; import org.hibernate.ScrollableResults; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; import org.hibernate.criterion.Restrictions; import org.junit.Test; public class App_page { public static SessionFactory sf; static{ sf = new Configuration() .configure() .addClass(Dept.class) .addClass(Employee.class)//测试使用 .buildSessionFactory(); } //分页查询 //注意: 必须按照所示1、2、3的顺序书写,顺序不能调换 @Test public void all(){ Session session = sf.openSession(); session.beginTransaction(); Query q = session.createQuery("from Employee"); //1.总记录数 //这种方式也可以session.createQuery("select count(*) from Employee"); //但是hql给我提供了一个更好的方法 ScrollableResults scroll = q.scroll();//得到滚动的结果集 scroll.last();//滚动到最后一行 int totalCount = scroll.getRowNumber()+1;//得到滚动的记录数,即总记录数,但是是从0开始,所以要+1 //2.设置分页参数 q.setFirstResult(0); q.setMaxResults(2); //3.查询 System.out.println(q.list()); System.out.println("总记录数:"+totalCount); session.getTransaction().commit(); session.close(); /* Criteria查询和sql查询也支持上述的ScrollableResults对象进行分页查询 Criteria criteria = session.createCriteria(Employee.class); session.createSQLQuery("from t_employee"); */ } }
2、运行结果:
相关文章推荐
- 数据库分页查询语句数据库查询
- SQL分页查询方式汇总
- Oracle、MySQL和SqlServe三种数据库分页查询语句的区别介绍
- jquery向上向下取整适合分页查询
- 高效的SQLSERVER分页查询(推荐)
- mysql、mssql及oracle分页查询方法详解
- SQL Server 分页查询通用存储过程(只做分页查询用)
- mysql分页原理和高效率的mysql分页查询语句
- 完美实现bootstrap分页查询
- JDBC使用游标实现分页查询的方法
- Java操作MongoDB模糊查询和分页查询
- Oracle、MySQL和SqlServe三种数据库分页查询语句的区别介绍
- SQL分页查询方式汇总
- ORACLE数据库分页查询/翻页 最佳实践
- Oracle分页查询三种方式
- Oracle分页查询2
- oracle中rownum和分页查询
- oracle的分页管理
- elasticsearch分页列表查询
- 数据库分页查询SQL语句