【发布时间】:2019-11-18 16:21:43
【问题描述】:
我有在 Spring Boot 中将 List 转换为 Page 的业务逻辑。
在该代码中,我的可分页排序不在输出中排序。
如果我可以通过 pageable 排序或从 pageable.getSort() 排序 List,有没有办法?
-
注意:我正在使用 new PageImpl() 将 List 转换为 Page。*
int start = (int) pageable.getOffset(); int end = (start + pageable.getPageSize()) > List.size() ? List.size() : (start + pageable.getPageSize()); Page paginatedList = new PageImpl(floorsheetList.subList(start, end), pageable, list.size());
我实际上得到了 sorted=true 但数据不会排序。
sort: {
sorted: true,
unsorted: false,
empty: false
}
更新
Turns out PageImpl cannot sort the data. So have to manually sort it via Collections or any other APIs.
【问题讨论】:
-
Spring Data 直接支持
Page,因此如果您使用 Spring 数据从数据库中检索对象列表,您可以重构该代码以直接返回Page,即将被排序。
标签: java spring-boot sorting java-8 pagination