Spring Data Slice:getSize()和getNumberOfElements()之间的区别

jhy*_*yot 8 java spring spring-data spring-data-commons

是什么区别getSize(),并getNumberOfElements在Spring数据类org.springframework.data.domain.Slice

Javadoc在这里没有提供太多帮助.

Jak*_*Ch. 10

getSize()返回Slice的容量.

getNumberOfElements() Slice包含多少个元素.

例如:您需要来自PagingAndSortingRepository的数据页面.您可以调用repo.findAll(new PageRequest(0,30))之类的方法,这意味着您请求的第一页数据最多包含30个实体.假设数据库中只有10个实体,则会收到一个Page,其中size为30,numberOfElements为10.


not*_*est 5

这就是区别。

例如,考虑检索的完整内容有 55 个项目,页面大小为 10。

getSize - 如果可分页,则返回页面大小(即当前页面大小)

示例:一个页面可以定义为有 10 个项目。因此,getSize() 将根据页面定义返回 10。

getNumberOfElements - 返回页面的实际内容大小

示例:-根据实际数据,元素数量可以是 10 个或少于 10 个。最后一页将返回 5 项。

org.springframework.data.domain.AbstractPageRequest.java - 具有size属性

org.springframework.data.domain.Chunk - 抽象类具有 getNumberOfElements() 方法的定义,返回内容的大小(即列表类型)