spring-boot 使用Pageable将查询结果list 转page 分页
程序员文章站
2022-05-17 09:28:22
...
1、通过pageable 实现将list 转 page
测试发现 直接 通过 new pageImpl 来转换page 行不通
Page<String> stringPage = new PageImpl<String>(strings, pageable, strings.size());
根据结果可知 未实现分页功能。
则通过手动分割方式去实现
public static void main(String[] args) {
List<String> strings = new ArrayList<String>();
for (int i=0;i<20;i++){
strings.add("第"+i+"数据");
}
Pageable pageRequest = new PageRequest(1, 10);
Page<String> strings1 = listConvertToPage1(strings, pageRequest);
System.out.println(strings1);
}
public static <T> Page<T> listConvertToPage1(List<T> list, Pageable pageable) {
int start = pageable.getOffset();
int end = (start + pageable.getPageSize()) > list.size() ? list.size() : (start + pageable.getPageSize());
return new PageImpl<T>(list.subList(start, end), pageable, list.size());
}
上一篇: POI---读取.xls和.xlsx文件
下一篇: spring MVC 框架搭建