标签:pageSize pageNo int pageList List list plus Mybatis size
一、编写工具类:
/** * @project 工资条应用服务系统 * @Description 多表联查-分页 * @Author songwp * @Date 2022/8/8 10:31 * @Version 1.0.0 **/ public class PageUtils { public static Page getPages(Integer pageNo, Integer pageSize, List list){ Page page = new Page(); int size = list.size(); if(pageSize > size){ pageSize = size; } // 求出最大页数,防止currentPage越界 int maxPage = size % pageSize == 0 ? size / pageSize : size / pageSize + 1; if(pageNo > maxPage){ pageNo = maxPage; } // 当前页第一条数据下标 int currentIndex = pageNo > 1 ? (pageNo -1) * pageSize : 0; List pageList = new ArrayList<>(); // 将当前页的数据放进pageList for (int i = 0; i < pageSize && currentIndex + i < size; i++) { pageList.add(list.get(currentIndex + i)); } page.setCurrent(pageNo).setSize(pageSize).setTotal(list.size()).setRecords(pageList); return page; } }
二、调用测试数据显示:
{"records": [ { "year": "2022", "month": "2", "sendTime": "2022-08-05T10:48:13.000+0000", "haveSent": 4, "totalSend": 5, "totalSalary": 1000010.0, "uploadId": "1555505949937033218", "pushStatus": 1 } ], "total": "2", "size": "1", "current": "0", "orders": [], "optimizeCountSql": true, "searchCount": true, "countId": null, "maxLimit": null, "pages": "2" } }
标签:pageSize,pageNo,int,pageList,List,list,plus,Mybatis,size 来源: https://www.cnblogs.com/songweipeng/p/16561217.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。