13

Spring Data 类getSize()和in 有什么区别?getNumberOfElementsorg.springframework.data.domain.Slice

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

4

2 回答 2

17

getSize()返回 Slice 的容量。

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

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

于 2016-08-22T11:17:42.530 回答
4

这就是区别。

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

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

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

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

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

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

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

于 2016-08-22T11:01:40.120 回答