是否可以通过对数据库进行一次调用来获取结果列表的大小并实现分页?

问题描述 投票:0回答:1

这与这个问题相关:Total row count for pagination using JPA Criteria API

我不想进行两个单独的查询,一个用于选择计数,另一个用于获取分页结果。 有办法做到吗?

java database jpa pagination criteria
1个回答
0
投票

如果您严格只使用条件生成器,您将需要一个单独的查询来获取总数。 如果您确实想避免使用两个数据库查询,您可以使用

findAll()
方法并传入规范和可分页。在您的规范类中,您可以放置您的标准构建器逻辑,在可分页中您可以定义页面大小、页码和排序。 然后您可以将结果投射到对象的页面,即
Page<YourObject> myPage
。您只需执行以下操作即可获得结果
myPage.getTotalElements();

© www.soinside.com 2019 - 2024. All rights reserved.