对 JPA 2 条件查询进行分页
Posted
技术标签:
【中文标题】对 JPA 2 条件查询进行分页【英文标题】:Paginating a JPA 2 criteria query 【发布时间】:2010-12-09 11:01:54 【问题描述】:是否可以像在 Hibernate 中使用 setFirstResult 和 setMaxResults 那样对 JPA 2 criteria query 进行分页?
如果没有,有什么解决方法吗?
【问题讨论】:
【参考方案1】:this 问题“jpa 2 hibernate limit (max results) to a CriteriaQuery”的重复
CriteriaQuery 不是可执行文件 询问。您需要创建一个 TypedQuery 第一次使用 EntityManager.createQuery(criteriaQuery)。 然后,您可以设置的最大结果 这个并执行它。
【讨论】:
谢谢。我搜索过,但该问题没有出现在“分页”的结果中。【参考方案2】:是的,使用实体管理器并将条件查询作为参数传递:
List<?> results = em.createQuery(criteria).setFirstResult(offset).setMaxResults(5).getResultList();
【讨论】:
以上是关于对 JPA 2 条件查询进行分页的主要内容,如果未能解决你的问题,请参考以下文章