pager.java

package com.jspnews.util;import java.io.Serializable;
import java.util.List;/*** * <b> 分页通用类 </b>* * @author kangxu* @param <T>* */
public class Pager {/*** */private static final long serialVersionUID = 4542617637761955078L;/*** currentPage 当前页*/private int currentPage = 1;/*** pageSize 每页大小*/private int pageSize = 10;/*** pageTotal 总页数*/private int pageTotal;/*** recordTotal 总条数*/private int recordTotal = 0;/*** previousPage 前一页*/private int previousPage;/*** nextPage 下一页*/private int nextPage;/*** firstPage 第一页*/private int firstPage = 1;/*** lastPage 最后一页*/private int lastPage;/*** 拼接url*/private String url = "?p=";public String getUrl() {return url;}public void setUrl(String url) {this.url = url;}// 以下set方式是需要赋值的/*** 设置当前页 <br>* * @author kangxu* * @param currentPage*/public void setCurrentPage(int currentPage) {this.currentPage = currentPage;}/*** 设置每页大小,也可以不用赋值,默认大小为10条 <br>* * @author kangxu* * @param pageSize*/public void setPageSize(int pageSize) {this.pageSize = pageSize;}/*** 设置总条数,默认为0 <br>* * @author kangxu* * @param recordTotal*/public void setRecordTotal(int recordTotal) {this.recordTotal = recordTotal;otherAttr();}/*** 设置其他参数* * @author kangxu* */public void otherAttr() {// 总页数this.pageTotal = this.recordTotal % this.pageSize > 0 ? this.recordTotal / this.pageSize + 1: this.recordTotal / this.pageSize;// 第一页this.firstPage = 1;// 最后一页this.lastPage = this.pageTotal;// 前一页if (this.currentPage > 1) {this.previousPage = this.currentPage - 1;} else {this.previousPage = this.firstPage;}// 下一页if (this.currentPage < this.lastPage) {this.nextPage = this.currentPage + 1;} else {this.nextPage = this.lastPage;}}public int getCurrentPage() {return currentPage;}public int getPageSize() {return pageSize;}public int getPageTotal() {return pageTotal;}public int getRecordTotal() {return recordTotal;}public int getPreviousPage() {return previousPage;}public int getNextPage() {return nextPage;}public int getFirstPage() {return firstPage;}public int getLastPage() {return lastPage;}@Overridepublic String toString() {return "Pager [currentPage=" + currentPage + ", pageSize=" + pageSize + ", pageTotal=" + pageTotal+ ", recordTotal=" + recordTotal + ", previousPage=" + previousPage + ", nextPage=" + nextPage+ ", firstPage=" + firstPage + ", lastPage=" + lastPage + ", url=" + url + "]";}}

  

test

package com.jspnews.test;import com.jspnews.util.Pager;public class TestPager {public static void main(String[] args) {Pager pager = new Pager();pager.setCurrentPage(-1);pager.setPageSize(4);pager.setRecordTotal(21);System.out.println(pager.getPreviousPage() + "," + pager.getNextPage());pager.setCurrentPage(0);pager.setPageSize(4);pager.setRecordTotal(21);System.out.println(pager.getPreviousPage() + "," + pager.getNextPage());pager.setCurrentPage(1);pager.setPageSize(4);pager.setRecordTotal(15);System.out.println(pager.getPreviousPage() + "," + pager.getNextPage());pager.setCurrentPage(2);pager.setPageSize(4);pager.setRecordTotal(21);System.out.println(pager.getPreviousPage() + "," + pager.getNextPage());pager.setCurrentPage(3);pager.setPageSize(4);pager.setRecordTotal(21);System.out.println(pager.getPreviousPage() + "," + pager.getNextPage());pager.setCurrentPage(4);pager.setPageSize(4);pager.setRecordTotal(21);System.out.println(pager.getPreviousPage() + "," + pager.getNextPage());pager.setCurrentPage(5);pager.setPageSize(4);pager.setRecordTotal(21);System.out.println(pager.getPreviousPage() + "," + pager.getNextPage());pager.setCurrentPage(6);pager.setPageSize(4);pager.setRecordTotal(21);System.out.println(pager.getPreviousPage() + "," + pager.getNextPage());pager.setCurrentPage(7);pager.setPageSize(4);pager.setRecordTotal(21);System.out.println(pager.getPreviousPage() + "," + pager.getNextPage());}
}

  

result

1,0
1,1
1,2
1,3
2,4
3,5
4,6
5,6
6,6

  

java - 分页类相关推荐

  1. Java分页类定义和使用

    1 简介 在后端与前端进行交互的过程中,需要对后端得到的数据进行分页推送给前端,比如说在某个博客网站上某用户编写了100篇文档,但在页面展示时,可能在每个页面仅仅展示10条数据,如下图所示 因此,而且 ...

  2. java里写分页,自己写的Java分页类

    自己写的分页类 //分页类 package xiyou.cm.cattsoft.util; public class Page { private int totalRows;//总共记录数 priv ...

  3. java分页类Page

    package com.h3c.itac.util;import java.util.ArrayList; import java.util.List;@SuppressWarnings(" ...

  4. 分页类实例 java

    保存代码片段 分页类: 分页类,点击查看 1 package cn.news.vo; 2 3 import java.util.List; 4 /** 5 * 用于在页面上使用的数据类,包含有分页的信 ...

  5. php分页类 seo,HTML_写一个对搜索引擎友好的文章SEO分页类,使用jsp/php/asp等动态程序生成 - phpStudy...

    写一个对搜索引擎友好的文章SEO分页类 使用jsp/php/asp等动态程序生成的页面如何对搜索引擎友好呢?你可能想使用url_rewrite.不过,最好还是让同一个网址在任意时间对应的页面内容都是一 ...

  6. java分页模板_java 分页模型的模板

    分页sql select top 每页要显示的记录数 * from 表名 where 主键 not in (select top (每页显示的记录数*(当前页-1)) 主键 from 表名 ) sel ...

  7. java分页中显示更多_早期更多失败– Java 8

    java分页中显示更多 快速失败或早期失败是一种软件工程概念,旨在通过在不应该发生的事情发生时立即停止执行来防止复杂问题的发生. 在之前的博客文章和演示中,我将详细介绍这种方法的优点,在此博客文章中, ...

  8. java sql分页_mysql、sqlserver、oracle分页,java分页统一接口实现

    定义:pageStart 起始页,pageEnd 终止页,pageSize页面容量 oracle分页: select * from ( select mytable.*,rownum num from ...

  9. java 分页_Spring Boot + MyBatis 如何借助PageHelper插件实现分页效果

    概述 上文中已经介绍了Spring和MyBatis的整合,在上文的基础上我们加入了PageHelper这个插件,来实现MyBatis列表查询的分页效果 PageHelper是啥 PageHelper是 ...

最新文章

  1. 实测实量数据表格_施工现场全套实测实量操作图解,值得收藏!
  2. 关系型数据库设计规则
  3. async 打包异常_重新打包流中的异常
  4. 中职计算机专业第二单元试题,大学计算机Moodle第二单元测验满分答案
  5. python 全部缩进一行_Python成为专业人士笔记–程序行空白及tab缩进的作用
  6. 要人帮忙,电脑怎么不寄过来?
  7. Jibun 银行:一家纯网络银行,利用智能手机打开金融服务领域的新天地
  8. 他山之石 可以攻玉-《海量数据库解决方案》
  9. 够设计师用一辈子的25款经典英文字体
  10. arcgis怎么压缩tif文件_PDF文件怎么压缩才能变小?这样压缩,真的很简单!
  11. 百寸大屏搭配高清画质,极米NEW Z6X轻松打造沉浸式家庭影院
  12. iMeta | ggClusterNet微生物网络分析和可视化保姆级教程
  13. 如何提升公众号关注率,让用户看完文章关注你
  14. 研究人员有助的网站 呸子
  15. 深度学习在美团配送ETA预估中的探索与实践-笔记
  16. apache php 整合,【原创】Apache整合PHP
  17. 前端插件日常问题 整理
  18. 相位相关影像匹配算法
  19. Diffblue Cover AI Java:Difflane如何利用Diffblue Cover AI实现Java自动化的单元测试
  20. 香港的房价真的那么贵吗?用数据挖掘真相!

热门文章

  1. Win7上Git安装及配置过程
  2. ProgressDialog用法详解
  3. Objective-C NS_OPTIONS 类型的枚举
  4. iOS单例模式定义与使用
  5. 7.26T2某不科学的迷你激光炮
  6. Vue基础进阶 之 过渡效果
  7. 【Linux】时间同步设置+防火墙设置+SELinux设置
  8. Alpha 冲刺 (3/10)
  9. unity 开启外部摄像头
  10. html网页特殊符号代码