当前位置: 首页 > news >正文

Java List分页工具

PageUtil.java

import com.google.common.collect.Lists;
import com.jd.platform.hotkey.dashboard.common.domain.Page;
import org.springframework.util.CollectionUtils;import java.util.ArrayList;
import java.util.List;public class PageUtil {/*** 通用分页工具类*/public static <T> Page<T> pagination(final List<T> data, final int pageSize,final int pageNum) {if (CollectionUtils.isEmpty(data)) {return new Page<>(1, 0, new ArrayList<>());}List<List<T>> lists = Lists.partition(data, pageSize);int localPageNum = pageNum;if (localPageNum >= lists.size()) {localPageNum = lists.size() - 1;}return new Page<>(localPageNum, data.size(), lists.get(localPageNum));}
}

Page.java


import java.io.Serializable;
import java.util.List;public class Page<T> implements Serializable {private static final long    serialVersionUID = 1L;/**当前第几页*/private              Integer page;/**总共多少条*/private              int     total;private              List<T> rows;public Page(Integer page, int total, List<T> rows) {this.page  = page;this.total = total;this.rows  = rows;}public Integer getPage() {return page;}public void setPage(Integer page) {this.page = page;}public int getTotal() {return total;}public void setTotal(int total) {this.total = total;}public List<T> getRows() {return rows;}public void setRows(List<T> rows) {this.rows = rows;}@Overridepublic String toString() {return "Page{" +"page=" + page +", total=" + total +", rows=" + rows +'}';}
}
http://www.dtcms.com/a/165555.html

相关文章:

  • 零部件设计行业如何在数字化转型中抓住机遇?
  • LangChain 核心模块:Data Conneciton - Vector Stores
  • 基于LangChain构建最小智能体(Agent)实现指南
  • 26个脑影像工具包合集分享:从预处理到SCI成图
  • 三轴云台之摄像模组篇
  • Java实现归并排序算法
  • 2025-03 机器人等级考试四级理论真题 4级
  • 如何在Dify沙盒中安装运行pandas、numpy
  • 毕业论文 | 基于STM32的自动烟雾报警系统设计
  • 提高设计的综合性能
  • C++后端服务器常见开发框架
  • WPF使用高性能图表
  • Elasticsearch入门速通01:核心概念与选型指南
  • mac电脑pytest生成测试报告
  • PixONE 六维力传感器:赋能 OEM 机器人,12 自由度精准感知
  • 文件备份服务器,备份文件内容到服务器有哪些方法?
  • 【阿里云大模型高级工程师ACP习题集】2.7 通过微调增强模型能力 (下篇)(⭐️⭐️⭐️ 重点章节!!!)
  • SSM电子资源管理系统
  • Copilot 上线深度推理智能体 Researcher
  • 虚拟机对前端开发的实用价值:提升效率与解决痛点的完整指南
  • 深入解析Java架构师面试:从核心技术到AI应用
  • ARM 指令集(ubuntu环境学习) 第一章:ARM 指令集概述
  • 自定义Tool
  • 【Android】文件导出到本地或者U盘
  • 前端笔记-Element-Plus
  • 在线服务器都有哪些用途?
  • pytorch对应gpu版本是否可用判断逻辑
  • UE5 项目迁移 注意事项记录
  • redis 数据类型新手练习系列——List类型
  • 【Bootstrap V4系列】学习入门教程之 布局