使用了Hibernate,那么实现分页就变得十分简单,我们只需要得到:当前页,每页显示多少条数据,已经总数据量即可,Hibernate就会自动进行帮我们得到当前页的数据。
使用query对象的setFirstResult和setMaxResults方法
package com.svse.test;
import java.util.List;
import org.hibernate.Query;
import org.hibernate.Session;
import org.junit.Test;
import com.svse.bean.User;
import com.svse.utils.SessionFactory;
public class TestAPP {
@Test
public void test1(){
//当前页
int page=1;
//每页显示数量
int pagesize=5;
//总数据量,传给jsp页面使用
int total=20;
//得到Session对象
Session session=SessionFactory.getSession();
//得到query对象
Query query = session.createQuery("from User");
//设置当前页查询的起点(和ID无关)
query.setFirstResult((page-1)*pagesize);
//设置当前页显示的条数
query.setMaxResults(5);
//得到结果集
List<User> list = query.list();
//遍历
for (User user : list) {
System.out.print(user.getUid()+" "+user.getUsername()+" "+user.getPassword());
System.out.println();
}
}
}
查询结果