我正在尝试使用Springboot在Cassandra中获得分页结果,但我没有得到预期的结果。这是我的代码。
Slice<User> usersByNameSlice =
userRepository.findAll(CassandraPageRequest.first(10));
while (usersByNameSlice .hasNext()) {
//.. process
usersByNameSlice = userRepository.findAll(usersByNameSlice.nextPageable());
}
我有大约35位用户。循环工作3次,覆盖30个用户,但在30后循环中出来。如何解决此问题?
我认为您需要将while
循环的状况更改为usersByNameSlice.hasContent()
,以检查切片中是否有内容。
(或甚至将其与检查isPaged()
结合使用 - 因为最后一页上的nextPageable
将返回未划分的状态(。