SubList分页-010-Pager类
来源:互联网 发布:java 如何截断字符串 编辑:程序博客网 时间:2024/05/21 10:29
概述
1.属性+get、set方法
2.增加泛型到类(getList使用)
3.空参/参数构造器-参数构造器很重要,核心
4.toString方法
5.实现Serializable接口
测试代码
package top.itcourse.page.model;import java.io.Serializable;import java.util.List;public class Pager<T> implements Serializable{ private static final long serialVersionUID = 6890057936400025118L; // 1.每页显示的记录数目 private int pageSize; // 2.当前数据的页数 private int currentPage; // 3.记录总数目 private int totalRecord; // 4.页面总数目 private int totalPage; // 5.数据List private List<T> dataList; // 空参构造器 public Pager() { } /* * 根据List<T> dataList, int currentPage, int pageSize * 三个参数算出另外两个 */ // 有参构造器 public Pager(List<T> dataList, int currentPage, int pageSize) { if( dataList == null ) { return ; } System.out.println("currentPage: " + currentPage); // 分页总数 this.pageSize = pageSize; // 总记录条数 this.totalRecord = dataList.size(); System.out.println("totalRecord: " + this.totalRecord); // 页面总数目 this.totalPage = totalRecord / pageSize; if( totalRecord % pageSize != 0 ) { totalPage += 1; } // 当前页:如果传进来的当前页大于总的数目,我们就认为它是最后一页 System.out.println("totalPage: " + this.totalPage); this.currentPage = currentPage; if( this.totalPage < currentPage ) { this.currentPage = this.totalPage; } // 数据列(这就是重点了,subList) // 当前页 起始记录位置 System.out.println(this.pageSize + ":" + this.currentPage); int fromIndex = this.pageSize*(this.currentPage - 1); // 好好理解 // 当前页 结束的记录位置 int toIndex = this.pageSize*this.currentPage; // 好好理解 if( toIndex > totalRecord ) { toIndex = totalRecord; } // 数据列赋值 this.dataList = dataList.subList(fromIndex, toIndex); } public int getPageSize() { return pageSize; } public void setPageSize(int pageSize) { this.pageSize = pageSize; } public int getCurrentPage() { return currentPage; } public void setCurrentPage(int currentPage) { this.currentPage = currentPage; } public int getTotalRecord() { return totalRecord; } public void setTotalRecord(int totalRecord) { this.totalRecord = totalRecord; } public int getTotalPage() { return totalPage; } public void setTotalPage(int totalPage) { this.totalPage = totalPage; } public List<T> getDataList() { return dataList; } public void setDataList(List<T> dataList) { this.dataList = dataList; } public static long getSerialversionuid() { return serialVersionUID; } @Override public String toString() { return "Page [pageSize=" + pageSize + ", currentPage=" + currentPage + ", totalRecord=" + totalRecord + ", totalPage=" + totalPage + ", dataList=" + dataList + "]"; }}
源码下载
关注下方的微信公众号,回复:java_div_page.code
欢迎加入交流群:451826376
更多信息:www.itcourse.top
阅读全文
0 0
- SubList分页-010-Pager类
- 分页类Pager
- 分页类pager
- 分页工具类Pager
- SubList分页-004-Student类
- SubList分页-006-jdbcUtils类
- SubList分页-007-Dao类
- SubList分页-009-SubListStudentDAOImpl类
- SubList分页-011-Constant类
- SubList分页-013-SubListStudentServiceImpl类
- SubList分页-014-SubListServlet类
- SubList分页-015-InputParameter类
- Pear的Pager分页类
- pager分页
- JAVA 分页类 Page Pager page
- PHP通用分页(Pager)类
- PHP通用分页(Pager)类
- List内置分页sublist
- 复旦大学:医学生+程序员+炉石传说=?
- MySQL替换oracle里ROW_NUMBER () OVER ( PARTITION BY '' ORDER BY ' ' DESC )的方法
- SubList分页-009-SubListStudentDAOImpl类
- glusterfs分布式文件系统详细原理
- 程序员最讨厌的编程语言和技术…想不到PHP也有今天
- SubList分页-010-Pager类
- css/js解决 页面多次点击时出现部分蓝色
- C++ STL一一Class auto_ptr
- aa
- java导出excel弹框下载
- caffe修改记录
- openSmile-2.3.0在Linux下安装
- 设计模式之责任链模式
- PAT甲级 1037. Magic Coupon (25)