用户登录
用户注册

分享至

用hibernate实现分页

  • 作者: 拼搏84896252
  • 来源: 51数据库
  • 2021-01-18
public List getBy分页(final int start, final int max) {//start表示从第几条开始显示,max表示一次显示几条数据
List<Users> page = new ArrayList<Users>();
page=(List<Users>)this.getHibernateTemplate().executeFind(new HibernateCallback(){
public Object doInHibernate(Session session)
throws HibernateException, SQLException {
List<Users> list = new ArrayList<Users>();
list = session.createQuery("From Users").setFirstResult(start).setMaxResults(max).list();//这里设置分页显示的数据
return list;
}

});
return page;
}
该方法是在你的dao实现类继承了HibernateDaoSupport方可使用。



  我写个大概给你仅供参考:
int page=1; //显示的页数
int pagesize =5;//每页显示的个数
transaction ts = session.begintransaction();
query query =session.createquery("from user order by id");
query.setfirstresult((page*pagesize-pagesize));
query.setmaxresults(page);
list list=query.list();
ts.commit();



  Query接口的setFirstResult(int i) 和setMaxResults(int j)方法,i是从第几行开始读,j是读多少行
软件
前端设计
程序设计
Java相关