java-mybatis-手动分页工具类
使用
List<PhcpSaBankAl> saBankAlList = phcpSaBankAlDao.getBankInfoList(loginUserType.getCityCode(), phcpSaBankAl.getCreateDate());
Page pages = PageUtils.getPages(phcpSaBankAl.getPage(), phcpSaBankAl.getSize(), saBankAlList);
return Result.ok("查询成功", pages);
工具类
package com.chinaums.mqy.util;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.ArrayList;
import java.util.List;
/**
* 分页工具类
*
* @author JeWang
*/
public class PageUtils {
public static Page getPages(Integer currentPage, Integer pageSize, List list) {
Page page = new Page();
int size = list.size();
if (pageSize > size) {
pageSize = size;
}
int maxPage;
if (pageSize > 0) {
maxPage = size % pageSize == 0 ? size / pageSize : size / pageSize + 1;
if (currentPage > maxPage) {
currentPage = maxPage;
}
//当前页第一条数据下标
int curIds = currentPage > 1 ? (currentPage - 1) * pageSize : 0;
List pageList = new ArrayList<>();
//将当前页的数据放进pageList
for (int i = 0; i < pageSize && curIds + i < size; i++) {
pageList.add(list.get(curIds + i));
}
page.setCurrent(currentPage).setSize(pageSize).setTotal(list.size()).setRecords(pageList);
}
return page;
}
}
本文作者:DaenMax
本文链接:https://www.cnblogs.com/daen/p/16336895.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
分类:
JAVA:日常
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?