java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > java PageInfo list分页处理

java使用PageInfo的list通用分页处理demo

作者:蚕1蚕2

这篇文章主要为大家介绍了java使用PageInfo的list通用分页处理demo,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步

 处理接口返回数据, 获取分页后的数据列表

/**
 *
 * @param list     待分页数据列表
 * @param pageNum  页码
 * @param pageSize 页面数量
 * @return com.github.pagehelper.PageInfo
 * @author chengxianwei
 * @date 2023/1/12
 */
public static <T> PageInfo startPageList(List<T> list, Integer pageNum, Integer pageSize) {
    // 总条数
    int total = list.size();
    // 页大小
    int size = pageNum * pageSize;
    // 总页数 总条数 取模 页大小
    int pages = total % size == 0 ? total / size : total / size + 1;
    // 结束索引 页大小大于总条数时,为总条数, 否则为页大小
    int toIndex = size > total ? total : size;
    // 开始索引
    int fromIndex = (pageNum - 1) * pageSize;
    if (fromIndex > toIndex) {
        fromIndex = 1;
    }
    // 截取数据
    List<T> dataList = list.subList(fromIndex, toIndex);
    // 分页数据
    PageInfo<T> pageInfo = new PageInfo<>(list);
    pageInfo.setTotal(total);
    pageInfo.setPages(pages);
    pageInfo.setPageNum(pageNum);
    pageInfo.setPageSize(pageSize);
    pageInfo.setList(dataList);
    return pageInfo;
}

以上就是java使用PageInfo的list通用分页处理demo的详细内容,更多关于java PageInfo list分页处理的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文