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. ie 图片拉伸

    终于发现只要设置img为 height:auto,width:auto,就不会出现这种情况了 img { height: auto; width: auto; }

  2. js实现复制|剪切指定内容到粘贴板--clipboard

    这是著名开源项目 clipboard.js 的 README.md,里面讲解的更加详细,有兴趣的同学可以了解一下.项目地址:https://github.com/zenorocha/clipboard ...

  3. TCP三次挥手

    tcp:三次握手 client和server之间需要经历三次握手才能建立连接(connnect()方法中封装了三次握手的步骤)syn:同步请求,建立连接的请求ack:对syn请求包的确认 应答syn: ...

  4. PHP FILTER_SANITIZE_STRIPPED 过滤器

    定义和用法 FILTER_SANITIZE_STRIPPED 过滤器去除或编码不需要的字符. 该过滤器是 FILTER_SANITIZE_STRING 过滤器的别名 该过滤器删除那些对应用程序有潜在危 ...

  5. Delphi 文件操作(路径、目录)

    Delphi利用系统环境变量获取常用系统目录 //譬如 %WINDIR% 是表示系统目录的系统变量, 可以这样获取: var s: string; begin s := GetEnvironmentV ...

  6. 第十四届华中科技大学程序设计竞赛--J Various Tree

    链接:https://www.nowcoder.com/acm/contest/106/J来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536 ...

  7. 深入理解PHP原理之Opcodes(PHP执行代码会经过的4个步骤是什么)

    深入理解PHP原理之Opcodes(PHP执行代码会经过的4个步骤是什么) 一.总结 一句话总结: 1.Scanning(Lexing) ,将PHP代码转换为语言片段(Tokens) 2.Parsin ...

  8. AntiPlug

    反插件工程 #pragma once #ifndef __ENHANFUNC_H__ #define __ENHANFUNC_H__ #include <iostream> #includ ...

  9. Jackson第一个程序

    再进入学习jackson库的细节之前,让我们来看看应用程序操作功能.在这个例子中,我们创建一个Student类.将创建一个JSON字符串学生的详细信息,并将其反序列化到学生的对象,然后将其序列化到JS ...

  10. TIKA环境配置

    本章将指导完成设置Apache Tika在Windows和Linux的配置过程.用户管理是必要的,同时安装了Apache Tika. 系统要求 JDK Java SE 2 JDK 1.6 或以上 内存 ...