📄 page.java
字号:
package com.briup.run.common.util;import java.util.List;import org.hibernate.Query;import org.hibernate.Session;public class Page { //每页的记录数,默认是每页10行,你也可以用setRecordCount()修改 private static int recordCount=4; //每页包含的数据 private static List list; //要查第几页呢!就靠她了 private static int currentPage; //总共有多少页 private static int pageCount; private static Page page = new Page(); private Page(){ } //直接用此方法即可查出你想要的。。。。,参数className是要查的类,findPage是要查第几页 //此类最好在业务层调用,以防代码污染,原因嘛,是因为用到了Hibernate,所以此类也就归到了持久层 //如果你的HibernateSessionFactory获得Session是别的方法,请修改currentSession() public static Page findPage(String className, int findPage) { int pageCount=findPageCount(className); if(findPage<1){ findPage=1; } if(findPage>pageCount){ findPage = pageCount; } Session session = HibernateSessionFactory.getSession(); Query query = session.createQuery(className); query.setFirstResult((findPage - 1) * recordCount); query.setMaxResults(recordCount); list = query.list(); page.setCurrentPage(findPage); page.setList(list); page.setPageCount(pageCount); return page; } //此方法就不用管了 private static int findPageCount(String className) { Session session = HibernateSessionFactory.getSession(); Query query = session.createQuery("select count(*) " + className); if((Integer) query.list().get(0)%recordCount == 0){ pageCount = (int) ((Integer) query.list().get(0)/recordCount); }else pageCount = (int) ((Integer) query.list().get(0)/recordCount+1); return pageCount; } public int getCurrentPage() { return currentPage; } public void setCurrentPage(int currentPage) { this.currentPage = currentPage; } public List getList() { return list; } public void setList(List list) { this.list = list; } public int getPageCount() { return pageCount; } public void setPageCount(int pageCount) { this.pageCount = pageCount; } public int getRecordCount() { return recordCount; } public void setRecordCount(int recordCount) { this.recordCount = recordCount; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -