java - 我可以将 Slice 与 findAll 方法一起使用吗 : Spring Data

标签 java spring spring-data spring-data-jpa

我想要的是:跳过 spring 使用 findAll(Pageable) 执行的计数查询。

我发现有 Slice datatype对于这样的 UI(基于下一个),不需要总记录/页面,因此不需要计数查询。

我可以为 findByName(Pageable) 等方法使用 Slice 返回类型 但是如果我将 Slice 用于 findAll(Pageable),那么它仍然会执行计数查询。

是否有一种解决方法,我可以使用 slice 进行 findAll 避免计数查询?

附言:我想要 slice 提供的功能,比如 hasNext、size 等 我也不需要使用规范。

感谢任何帮助。

最佳答案

可以使用 Slice findAll() - 您只需要扩展正确的 Spring JPA 存储库。

如果你扩展 JpaRepository 它将不起作用,因为它扩展了 PagingAndSortingRepository 并且已经有 findAll(Pageable pageable) 分页存储库中定义的方法。

如果扩展 CrudRepository 那么您将能够定义方法 Slice<T> findAll(Pageable pageable)在您的存储库中。

关于java - 我可以将 Slice 与 findAll 方法一起使用吗 : Spring Data,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40238918/

相关文章:

java - 计算字符串出现次数的最佳方式/数据结构

java - 访问动态壁纸中的时间

java - 在android中获取本地日期一样长,可能会感到困惑?

java - 为什么 Spring 4 只允许在一个上下文中使用一个 TaskScheduler?

java - Spring jdbctemplate 在应用程序关闭时关闭连接?

Spring Boot MongoDB REST - 自定义存储库方法

java - Neo4j Spring Data 示例缺少注释 @Indexed

java - 何时使用 Spark Streaming 将记录写入预写日志?

java - 使用 jackson databind 将 JSON 反序列化为 Map<String,String>

java - 如何强制 Spring Data 创建具有实体运行时类型的查询方法?