public class PageList<T> {

    private int totalpage;     //总页数
private int totalcount; //总记录数
private int currentpage; //当前页
private int pagesize; //每页的数量
private int firstpage; //第一页
private int lastpage; //最后一页
private int prepage; //上一页
private int nextpage; //下一页
private boolean isprepage; //是否有上一页
private boolean isnextpage; //是否有下一页
private List<T> result = new ArrayList<T>(); /**
* 构造方法描述
*
* @param result 返回结果
* @param currentpage 当前页数
* @param pagesize 每页的数量
* @param totalcount 总记录数
*/
public PageList(List<T> result,int currentpage, int pagesize, int totalcount){
this.result = result;
this.currentpage = currentpage;
this.pagesize = pagesize;
this.totalcount = totalcount; if(pagesize == 0 || totalcount == 0){
return ;
} if(currentpage < 1){
this.currentpage = 1;
} if (totalcount % pagesize == 0) {
this.totalpage = totalcount / pagesize;
} else {
this.totalpage = totalcount / pagesize + 1;
} this.firstpage =1;
this.lastpage = totalpage; if(this.currentpage > 1){
this.prepage = this.currentpage - 1;
}else{
this.prepage = 1;
} if(this.currentpage < totalpage){
this.nextpage = this.currentpage + 1;
}else{
this.nextpage = totalpage;
} if(this.currentpage <= 1){
this.isprepage = false;
}else{
this.isprepage = true;
} if(this.currentpage >= totalpage){
this.isnextpage = false;
}else{
this.isnextpage = true;
}
} public int getTotalpage() {
return totalpage;
} public void setTotalpage(int totalpage) {
this.totalpage = totalpage;
} public int getTotalcount() {
return totalcount;
} public void setTotalcount(int totalcount) {
this.totalcount = totalcount;
} public int getCurrentpage() {
return currentpage;
} public void setCurrentpage(int currentpage) {
this.currentpage = currentpage;
} public int getPagesize() {
return pagesize;
} public void setPagesize(int pagesize) {
this.pagesize = pagesize;
} public int getFirstpage() {
return firstpage;
} public void setFirstpage(int firstpage) {
this.firstpage = firstpage;
} public int getLastpage() {
return lastpage;
} public void setLastpage(int lastpage) {
this.lastpage = lastpage;
} public int getPrepage() {
return prepage;
} public void setPrepage(int prepage) {
this.prepage = prepage;
} public int getNextpage() {
return nextpage;
} public void setNextpage(int nextpage) {
this.nextpage = nextpage;
} public boolean isIsprepage() {
return isprepage;
} public void setIsprepage(boolean isprepage) {
this.isprepage = isprepage;
} public boolean isIsnextpage() {
return isnextpage;
} public void setIsnextpage(boolean isnextpage) {
this.isnextpage = isnextpage;
} public List<T> getResult() {
return result;
} public void setResult(List<T> result) {
this.result = result;
} }

Java分页查询工具类的更多相关文章

  1. 分享自研实现的多数据源(支持同DB不同表、跨DB表、内存数据、外部系统数据等)分页查询工具类实现原理及使用

    思考: 提起分页查询,想必任何一个开发人员(不论是新手还是老手)都能快速编码实现,实现原理再简单不过,无非就是写一条SELECT查询的SQL语句,ORDER BY分页排序的字段, 再结合limit ( ...

  2. 使用java的Calendar工具类获取到本月的第一天起始时间和最后一天结束时间。

    1.使用java的Calendar工具类获取到本月的第一天起始时间和最后一天结束时间. package com.fline.aic.utils; import java.text.DateFormat ...

  3. Java基础-DButils工具类(QueryRunner)详解

    Java基础-DButils工具类(QueryRunner)详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 如果只使用JDBC进行开发,我们会发现冗余代码过多,为了简化JDBC ...

  4. Java并发编程工具类 CountDownLatch CyclicBarrier Semaphore使用Demo

    Java并发编程工具类 CountDownLatch CyclicBarrier Semaphore使用Demo CountDownLatch countDownLatch这个类使一个线程等待其他线程 ...

  5. HttpTool.java(在java tool util工具类中已存在) 暂保留

    HttpTool.java 该类为java源生态的http 请求工具,不依赖第三方jar包 ,即插即用. package kingtool; import java.io.BufferedReader ...

  6. java文件处理工具类

    import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.BufferedRead ...

  7. java格式处理工具类

    import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOExceptio ...

  8. 分享非常好用的前端分页js工具类 灵活 简单易懂

    分享自己封装的前端分页js工具类  下面是默认样式效果截图 可以随意更改js及css 很灵活 /** * pageSize, 每页显示数 * pageIndex, 当前页数 * pageCount 总 ...

  9. Java 敏感词过滤,Java 敏感词替换,Java 敏感词工具类

    Java 敏感词过滤,Java 敏感词替换,Java 敏感词工具类   =========================== ©Copyright 蕃薯耀 2017年9月25日 http://www ...

随机推荐

  1. eclipse中server location为灰色,不能修改

    当自己用eclipse写好了web项目后,也同时配置了服务器(tomcat6), 上面部署完毕后,直接访问http://localhost:8080 发现是 无法访问的,这是因为,Servers这里的 ...

  2. 异步ajax请求数据处理

    jQuery.ajax(url,[settings]) 概述 通过 HTTP 请求加载远程数据. jQuery 底层 AJAX 实现.简单易用的高层实现见 $.get, $.post 等.$.ajax ...

  3. 在Kubernetes下部署Prometheus

    使用ConfigMaps管理应用配置 当使用Deployment管理和部署应用程序时,用户可以方便了对应用进行扩容或者缩容,从而产生多个Pod实例.为了 能够统一管理这些Pod的配置信息,在Kuber ...

  4. dubbo管理平台安装

    dubbo-admin.war可在网上百度去下载,但是我下载了好几个,发布上去服务启动都报错,这个时候大概是我们系统的JDK和编译dubbo-admin.war的JDK版本不同导致的了,强烈建议自己下 ...

  5. Java 基础 -- BigInteger BigDecimai大数

    BigInteger 加减乘除 BigInteger bi1 = new BigInteger("123456789") ; // 声明BigInteger对象 BigIntege ...

  6. linux IPC的PIPE

    一.PIPE(无名管道) 函数原型: #include <unistd.h> ]); 通常,进程会先调用pipe,接着调用fork,从而创建从父进程到子进程的IPC通道. 父进程和子进程之 ...

  7. composer安装后台模板

    先下载composer的windows安装包 cmd切换到源代码所在目录 https://www.cnblogs.com/wgphp/p/8001434.html 安装过程可以参照这篇文章 一点问题是 ...

  8. kubernetes Pod的升级与回滚

    一:Deployment的升级 1.通过kubectl set image命令为Deployment设置新的镜像名称kubectl set image deployment/nginx-deploym ...

  9. [bzoj2510]弱题 (循环矩阵优化dp)

    Description 有M个球,一开始每个球均有一个初始标号,标号范围为1-N且为整数,标号为i的球有ai个,并保证Σai = M. 每次操作等概率取出一个球(即取出每个球的概率均为1/M),若这个 ...

  10. 剑指offer——70n个骰子的点数

    题目: 把n个骰子扔在地上,所有骰子朝上一面的点数之和为s.输入n,打印出s的所有可能的值出现的概率. 题解: 使用两个数组存每次投的点数 void theProbability(const int ...