我在阅读Spring Data JPA官方文档关于
第一种方法允许您向查询方法传递一个org.springframework.data.domain.Pageable实例,以动态地将分页添加到您静态定义的查询中。Page知道可用的元素和页面总数。它通过基础设施触发计数查询来计算总数。由于这可能很昂贵(取决于所使用的存储),因此可以返回一个Slice。当遍历更大的结果集时,Slice仅知道是否有下一个Slice可用,这可能已经足够。 我理解如何使用
Page
和Slice
之间区别的段落时,发现以下内容(我加了强调):第一种方法允许您向查询方法传递一个org.springframework.data.domain.Pageable实例,以动态地将分页添加到您静态定义的查询中。Page知道可用的元素和页面总数。它通过基础设施触发计数查询来计算总数。由于这可能很昂贵(取决于所使用的存储),因此可以返回一个Slice。当遍历更大的结果集时,Slice仅知道是否有下一个Slice可用,这可能已经足够。 我理解如何使用
Page
通过执行具有相同where子句的额外计数查询来获取总元素数,但是Slice
如何通过单个查询获知其他元素是否可用? 执行的SQL是什么?