欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java分頁(yè)工具類(lèi)及其使用(示例分享)

 更新時(shí)間:2017年01月04日 14:25:44   作者:kangxu  
本篇文章主要分享了Java分頁(yè)工具類(lèi)及其使用的示例代碼,具有一定的參考價(jià)值,下面跟著小編一起來(lái)看下吧

Pager.java

package pers.kangxu.datautils.common;
import java.io.Serializable;
import java.util.List;
/**
 * 
 * <b> 分頁(yè)通用類(lèi) </b>
 * 
 * @author kangxu
 * @param <T>
 * 
 */
public class Pager<T> implements Serializable {
 /**
 * 
 */
 private static final long serialVersionUID = 4542617637761955078L;
 /**
 * currentPage 當(dāng)前頁(yè)
 */
 private int currentPage = 1;
 /**
 * pageSize 每頁(yè)大小
 */
 private int pageSize = 10;
 /**
 * pageTotal 總頁(yè)數(shù)
 */
 private int pageTotal;
 /**
 * recordTotal 總條數(shù)
 */
 private int recordTotal = 0;
 /**
 * previousPage 前一頁(yè)
 */
 private int previousPage;
 /**
 * nextPage 下一頁(yè)
 */
 private int nextPage;
 /**
 * firstPage 第一頁(yè)
 */
 private int firstPage = 1;
 /**
 * lastPage 最后一頁(yè)
 */
 private int lastPage;
 /**
 * content 每頁(yè)的內(nèi)容
 */
 private List<T> content;
 // 以下set方式是需要賦值的
 /**
 * 設(shè)置當(dāng)前頁(yè) <br>
 * 
 * @author kangxu
 * 
 * @param currentPage
 */
 public void setCurrentPage(int currentPage) {
 this.currentPage = currentPage;
 }
 /**
 * 設(shè)置每頁(yè)大小,也可以不用賦值,默認(rèn)大小為10條 <br>
 * 
 * @author kangxu
 * 
 * @param pageSize
 */
 public void setPageSize(int pageSize) {
 this.pageSize = pageSize;
 }
 /**
 * 設(shè)置總條數(shù),默認(rèn)為0 <br>
 * 
 * @author kangxu
 * 
 * @param recordTotal
 */
 public void setRecordTotal(int recordTotal) {
 this.recordTotal = recordTotal;
 otherAttr();
 }
 /**
 * 設(shè)置分頁(yè)內(nèi)容 <br>
 * 
 * @author kangxu
 * 
 * @param content
 */
 public void setContent(List<T> content) {
 this.content = content;
 }
 /**
 * 設(shè)置其他參數(shù)
 * 
 * @author kangxu
 * 
 */
 public void otherAttr() {
 // 總頁(yè)數(shù)
 this.pageTotal = this.recordTotal % this.pageSize > 0 ? this.recordTotal / this.pageSize + 1 : this.recordTotal / this.pageSize;
 // 第一頁(yè)
 this.firstPage = 1;
 // 最后一頁(yè)
 this.lastPage = this.pageTotal;
 // 前一頁(yè)
 if (this.currentPage > 1) {
 this.previousPage = this.currentPage - 1;
 } else {
 this.previousPage = this.firstPage;
 }
 // 下一頁(yè)
 if (this.currentPage < this.lastPage) {
 this.nextPage = this.currentPage + 1;
 } else {
 this.nextPage = this.lastPage;
 }
 }
 // 放開(kāi)私有屬性
 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;
 }
 public List<T> getContent() {
 return content;
 }
 @Override
 public String toString() {
 return "Pager [currentPage=" + currentPage + ", pageSize=" + pageSize
 + ", pageTotal=" + pageTotal + ", recordTotal=" + recordTotal
 + ", previousPage=" + previousPage + ", nextPage=" + nextPage
 + ", firstPage=" + firstPage + ", lastPage=" + lastPage
 + ", content=" + content + "]";
 }
}

使用 PagerTester.java

package pers.kangxu.datautils.utils;
import java.util.ArrayList;
import java.util.List;
import pers.kangxu.datautils.common.Pager;
/**
 * 分頁(yè)數(shù)據(jù)測(cè)試
 * <b>
 *
 * </b>
 * @author kangxu
 *
 */
public class PagerTester {
 public static void main(String[] args) {
 Pager<String> pager = new Pager<String>();
 List<String> content = new ArrayList<String>();
 content.add("str1");
 content.add("str2");
 content.add("str3");
 content.add("str4");
 content.add("str5");
 content.add("str6");
 content.add("str7");
 content.add("str8");
 content.add("str9");
 content.add("str10");
 pager.setCurrentPage(1);
 pager.setPageSize(10);
 pager.setRecordTotal(62);
 pager.setContent(content);
 System.out.println(pager);
 }
}

以上就是本文的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,同時(shí)也希望多多支持腳本之家!

相關(guān)文章

  • Java中Stream流中map和forEach的區(qū)別詳解

    Java中Stream流中map和forEach的區(qū)別詳解

    本文主要介紹了Java中Stream流中map和forEach的區(qū)別詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • 用java WebSocket做一個(gè)聊天室

    用java WebSocket做一個(gè)聊天室

    這篇文章主要為大家詳細(xì)介紹了用java WebSocket做一個(gè)聊天室,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • Java可以如何實(shí)現(xiàn)文件變動(dòng)的監(jiān)聽(tīng)的示例

    Java可以如何實(shí)現(xiàn)文件變動(dòng)的監(jiān)聽(tīng)的示例

    本篇文章主要介紹了Java可以如何實(shí)現(xiàn)文件變動(dòng)的監(jiān)聽(tīng)的示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-02-02
  • Java泛型中<?>和<T>的區(qū)別淺析

    Java泛型中<?>和<T>的區(qū)別淺析

    <T>和<?>的區(qū)別 <T>是參數(shù)類(lèi)型,常常用于泛型類(lèi)或泛型方法的定義,下面這篇文章主要給大家介紹了關(guān)于Java泛型中<?>和<T>區(qū)別的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • Java中的CopyOnWriteArrayList深入解讀

    Java中的CopyOnWriteArrayList深入解讀

    這篇文章主要介紹了Java中的CopyOnWriteArrayList深入解讀,在 ArrayList 的類(lèi)注釋上,JDK 就提醒了我們,如果要把 ArrayList 作為共享變量的話,是線程不安全的,需要的朋友可以參考下
    2023-12-12
  • SpringMVC的簡(jiǎn)單傳值(實(shí)現(xiàn)代碼)

    SpringMVC的簡(jiǎn)單傳值(實(shí)現(xiàn)代碼)

    下面小編就為大家?guī)?lái)一篇SpringMVC的簡(jiǎn)單傳值(實(shí)現(xiàn)代碼)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-05-05
  • Java多線程中ThreadLocal解讀

    Java多線程中ThreadLocal解讀

    這篇文章主要介紹了Java多線程中ThreadLocal解讀,??多線程訪問(wèn)同一個(gè)共享變量的時(shí)候容易出現(xiàn)并發(fā)問(wèn)題,因此為了保證線程安全性,我們都會(huì)采用加鎖的方式,而ThreadLocal是除加鎖方式之外的另一種保證線程安全性的方法,需要的朋友可以參考下
    2023-09-09
  • Mybatis空值關(guān)聯(lián)的具體實(shí)現(xiàn)

    Mybatis空值關(guān)聯(lián)的具體實(shí)現(xiàn)

    在復(fù)雜的數(shù)據(jù)庫(kù)查詢(xún)中,處理空值關(guān)聯(lián)是一項(xiàng)常見(jiàn)的需求,本文就來(lái)介紹一下Mybatis空值關(guān)聯(lián)的具體實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-07-07
  • spring-boot中使用spring-boot-devtools的實(shí)現(xiàn)代碼

    spring-boot中使用spring-boot-devtools的實(shí)現(xiàn)代碼

    這篇文章主要介紹了spring-boot中使用spring-boot-devtools的實(shí)現(xiàn)代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Java中Dijkstra算法求解最短路徑的實(shí)現(xiàn)

    Java中Dijkstra算法求解最短路徑的實(shí)現(xiàn)

    Dijkstra算法是一種解決最短路徑問(wèn)題的常用算法,本文主要介紹了Java中Dijkstra算法求解最短路徑的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-09-09

最新評(píng)論