Hibernate分页查询需要用到两个方法
一个是setMaxResults()
设置查询多少条
另一个是setFirstResult()
设置起始位置
一般查询的起始位置为(pageNo-1)*pageSize
代码如下
//分页查询
public void fenye(int pageSize,int page) {
Session session = HibernateUtil.getSession();
Transaction tx = session.beginTransaction();
Query q = session.createQuery("select xuehao,xingming from Xuesheng");
q.setMaxResults(pageSize);
q.setFirstResult((page-1)*pageSize);
List<Object[]> list = q.list();
for (Object[] xs : list) {
System.out.println("姓名:" + xs[1]+",学号:"+xs[0]);
}
tx.commit();
HibernateUtil.closeSession();
}