【发布时间】:2018-07-09 01:11:36
【问题描述】:
我这样实现分页:
List<Products> products = productRepository.findAllProducts(productsRequest.getInitiatorType(), "ACTIVE",
new PageRequest(page, 100, Sort.Direction.DESC, "insertDate"));
但是我怎样才能得到这个查询的总大小呢?只有这样的重复查询?
@Query("SELECT t FROM Products t WHERE t.isApproved = true AND t.partnerId = ?1 AND t.categories.status = ?2")
List<OpcClProducts> findAllOpcClProducts(String senderId, String status, Pageable pageable);
@Query("SELECT COUNT(t) FROM Products t WHERE t.isApproved = true AND t.partnerId = ?1 AND t.categories.status = ?2")
long getTotalCount(String senderId, String status);
并调用 2 查询:对于 totalCount 和对于数据?
【问题讨论】:
-
尝试将您的对象更改为 Page
-
当您使用它时,将实体重命名为
Product。一个实例就是一个产品。字符串不命名为字符串,因为每个实例都是一个字符串。 -
@andrewTobilko 谢谢你提醒我!我不是 100% 确定 ^^'
-
@ip696 看看 Noixes 提供的答案。它解决了问题吗?
-
所以有一个大脑和我的想法一样。
标签: java pagination spring-data-jpa spring-repositories