首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Hibernate中的分页兑现+++[使用hql语句进行分页查询]

2012-08-10 
Hibernate中的分页实现+++[使用hql语句进行分页查询]/** * 使用hql语句进行分页查询 * @param hql 需要查

Hibernate中的分页实现+++[使用hql语句进行分页查询]

/** * 使用hql语句进行分页查询 * @param hql 需要查询的hql语句 * @param values 如果hql有多个个参数需要传入,values就是传入hql的参数数组 * @param offset 第一条记录索引 * @param pageSize 每页需要显示的记录数 * @return 当前页的所有记录 */ public List findByPage(final String hql, final Object[] values, final int offset, final int pageSize) { //通过一个HibernateCallback对象来执行查询 List list = getHibernateTemplate() .executeFind(new HibernateCallback() { //实现HibernateCallback接口必须实现的方法 public Object doInHibernate(Session session) throws HibernateException, SQLException { //执行Hibernate分页查询 Query query = session.createQuery(hql); //为hql语句传入参数 for (int i = 0 ; i < values.length ; i++) { query.setParameter( i, values[i]); } List result = query.setFirstResult(offset) .setMaxResults(pageSize) .list(); return result; } }); return list; } } 

?

热点排行