日期:2014-05-16  浏览次数:20534 次

使用Hibernate criteria进行分页查询时,如何实现一次查询取得总记录数和分页后结果集

?

可先使用 Projections.rowCount() 来取得总记录数,如下:

Long totalNum = (Long)criteria.setProjection(Projections.rowCount()).uniqueResult();

然后将 Projection 设为空,再进行正常分页。

???? ? criteria.setProjection(null);

??????? criteria.setFirstResult(beginIndex);

????? ? criteria.setMaxResults(pageSize);

????? ? List list = criteria.list();