代码分页

来源:互联网 发布:易语言人工智能机器人 编辑:程序博客网 时间:2024/05/17 03:16

场景

由于接手的老系统里的有个功能的列表(无分页)后台service层,dao层 的比较复杂,不仅sql复杂 而且同时调用了其他Dao层,在项目紧张的情况下 ,我又没法一下捋清业务逻辑,所以只能通过代码进行分页。直接上工具类吧 ,这个是我搜索的,然后又改了一些,记录一下,方便以后应急之用(查询的数据还是所有数据)。

代码

package com.nebula.app.app.common.utils;import java.util.List;public class PageUtil {    /**     * 分页方法     *     * @param list   源数据     * @param currentPage 当前页     * @param maxNum  每页显示几条     * @param pageNum   总条数     * @return     */    public static List getPageList(List<Object> list, int currentPage, int maxNum,            int pageCount) {         int fromIndex = 0; // 从哪里开始截取        int toIndex = 0; // 截取几个        int totalPage = 0;// 总页数        if (list == null || list.size() == 0){            return null;        }        //总页数        totalPage = (pageCount + maxNum -1) / maxNum;        // 当前页小于或等于总页数时执行        if (currentPage <= totalPage && currentPage != 0) {            fromIndex = (currentPage - 1) * maxNum;            if (currentPage == totalPage || (currentPage * maxNum ) >pageCount) {                toIndex = list.size();            } else {                toIndex = currentPage * maxNum;            }        }        return list.subList(fromIndex, toIndex);    }}
原创粉丝点击