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. codeforces1156D 0-1-Tree 并查集

    题目传送门 题意: 给定一棵n个点的边权为0或1的树,一条合法的路径(x,y)(x≠y)满足,从x走到y,一旦经过边权为1的边,就不能再经过边权为0的边,求有多少边满足条件? 思路: 首先这道题,换根 ...

  2. 前端学习(二十)jquery属性(笔记)

    jq里面操作属性的方法: 设置属性:            设置一个:            $(this).attr('src','img/pic2.jpg');            设置一组:  ...

  3. jsp service bean

    //在jsp中使用后台service中方法需要在jsp页面引入service bean 1 <%@page import="com..entity.Users"%> & ...

  4. 利用SparkSQL(java版)将离线数据或实时流数据写入hive的用法及坑点

    1. 通常利用SparkSQL将离线或实时流数据的SparkRDD数据写入Hive,一般有两种方法.第一种是利用org.apache.spark.sql.types.StructType和org.ap ...

  5. SQL 空值

    SQL NULL Values(空值) 什么是SQL NULL值? SQL 中, NULL 用于表示缺失的值.数据表中的 NULL 值表示该值所处的字段为空. 具有NULL值的字段是没有值的字段. 如 ...

  6. 云原生数据库崛起,阿里云POLARDB当选世界互联网领先科技成果!

    第六届世界互联网大会来了!千年水乡古镇乌镇又一次吸引了全世界的目光. 刚刚,阿里云自研数据库POLARDB在会上当选世界互联网领先科技成果.POLARDB解决了企业在云时代的数据库难题,帮助企业在数小 ...

  7. 工程师技术(二):postfix基础邮件服务、postfix空客户端邮件服务、搭建mariadb数据库系统、配置一个数据库、使用数据库查询

    一.postfix基础邮件服务 目标: 本例要求在虚拟机server0上配置 postfix 基础服务,具体要求如下: 1> 监听本机的所有接口    2> 将邮件域和邮件服务主机名都改为 ...

  8. TFS——更改计算机名称,影响TFS使用

    今天把自己电脑的计算机名称改了,打开VS的时候,就提示以下的错误: 报错情况 显示错误:工作区 DADI--20141015Q;SD-SERVER\Administrator 未驻留在此计算机上.如果 ...

  9. ubuntu ceph集群安装以及简单使用

    ubuntu ceph安装以及使用 1.安装环境 本文主要根据官方文档使用ubuntu14.04安装ceph集群,并且简单熟悉其基本操作.整个集群包括一个admin节点(admin node,主机名为 ...

  10. 内存Zone中的pageset成员分析

    1: struct per_cpu_pageset __percpu *pageset; 首先,分析一个函数,__free_pages,这个函数是Buddy System提供的API接口函数,用于翻译 ...