链接:各种数据库的分页方法 一、Hibernate中的分页: /** * Hibernate中的分页查询方法 * @param start 查询结果的开始下标 * @param max 查询结果的个数 */ public List find(int start, int max){ // 定义Session Session session = null; List list=null; String hql="from Trade"; try { // 通过自定义工具类得到Session session = HibernateUtils.getSession(); // 开启一个事务 session.beginTransaction(); //查询某个用户的交易信息 list=session.createQuery(hql).setFirstResult(start).setMaxResults(max).list(); // 提交事务 session.getTransaction().commit(); } catch (Exception e) { e.printStackTrace(); // 有异常则回滚事务 session.getTransaction().rollback(); } finally { // 断开连接 HibernateUtils.closeSession(session); } return list; } 二、Spring中使用HibernateTemplate模板时的Hibernate分页: /** *使用Spring框架中HibernateTemplate模板时, *调用Hibernate中分页的方法 *hsql HQL查询语句 *firstRow 开始索引 *maxRow 一次显示数据长度 */ public List find( final String hsql, final int firstRow, final int maxRow) throws Exception { return getHibernateTemplate().executeFind( new HibernateCallback() { public Object doInHibernate(Session s) throws HibernateException, SQLException { Query query = s.createQuery(hsql); query.setFirstResult(firstRow); query.setMaxResults(maxRow); List list = query.list(); return list; } }); }