pageHelper 对List进行分页

由于PageHelper 自带的分页器只能作用于第一个SQL查询 对List数据无效所以需要进行处理,以下放工具类直接调用

import com.github.pagehelper.Page;
import com.github.pagehelper.PageInfo;

import java.util.ArrayList;
import java.util.List;

public class pageHelper {
    public static PageInfo pageHelper(List list, Integer pageNum, Integer pageSize) {
        Page page = new Page(pageNum, pageSize);
        int total = list.size();
        page.setTotal(total);
        int startIndex = (pageNum - 1) * pageSize;
        int endIndex = Math.min(startIndex + pageSize, total);
        if (startIndex > endIndex) {
            page.addAll(new ArrayList());
            PageInfo pageInfo = new PageInfo<>(page);
            return pageInfo;
        } else {
            page.addAll(list.subList(startIndex, endIndex));
            PageInfo pageInfo = new PageInfo<>(page);
            return pageInfo;
        }
    }
}
原文地址:https://www.cnblogs.com/yangxiaoli/p/15659929.html