/**
* 切割分页数据,手动制造分页
*/
public static List splitList(int pageNum, int pageSize, List list) {
if (list.size() < (pageNum * pageSize)) {
//如果正好页码数被数据数整除,此时最后一页数据为空,则返回上一页数据
if (list.size() % pageSize == 0) {
return list.subList((list.size() / pageSize - 1) * pageSize, list.size());
}
//如果不能整除,则返回最后一页不足一页的数据
return list.subList(list.size() / pageSize * pageSize, list.size());
}
return list.subList((pageNum - 1) * pageSize, pageNum * pageSize);
}
/**
* 设置分页信息
*/
public static <T> List<T> setPage(Page<T> page, int pageNum, int pageSize, List<T> list) {
if (CollUtil.isEmpty(list)) {
page.setTotal(0);
return list;
}
List<T> result=splitList(pageNum,pageSize,list);
//设置分页数据
int total = list.size();
page.setTotal(total);
return result;
}
java后端实现手动分页
最新推荐文章于 2024-04-15 11:02:25 发布