Cet article décrit deux méthodes de mise en œuvre de la pagination d'hibernate. Partagez-le pour votre référence, comme suit:
1. Pagination des critères
PAMBRE GETPAGE (int CurrentPage, int pagesize, critère ... CRTS) {critères C = session.CreateCriteria (house.class); list list = null; for (int i = 0; i <Crts.length; i ++) {c.add (crts [i]);} c.setprojection (projections.rowCount (); TotalRecord = Integer.ValueOf (C.UniqueResult (). ToString ()); C.SetProjection (null); C.SetFirStResult ((PageSize) * (CurrentPage-1)); C.SetMaxResults (PageSize); List = C.List (); page Page = new Page (); page.setCurrentPage (currentPage); page.SetPageSize (pagesize); page.SetTotalRecord (totalRecord); page.setList (list); return page;}2. Pagination HQL
page publique getPage (int currentpage, int pageSize, string hql, objet ... args) {string counthql = "select count (*)" + hql.substring (hql.indexof ("from")); session session = hibernateutil.getinstance (). getSESS Args.Length; i ++) {query.setParameter (i, args [i]);} int totalRecord = Integer.Valueof (query.UniqueResult () + ""); query = session.createery (hql); for (int i = 0; i <args.length; i ++) {query.setParameter (i, args [i]);} query.setFirStResult (pagesize * (currentPage-1)); query.setmaxResults (pagesize); list <house> list = (list <house>) Query.List (); page page = new Page (); page.setCurrentPage (currentPage); page.SetPageSize (pagesize); page.SetTotalRecord (totalRecord); page.setList (list); return page;}J'espère que la description de cet article sera utile à la programmation Java de chacun basée sur le cadre d'hibernate.