亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java實現(xiàn)的分頁工具類與用法示例

 更新時間:2019年10月16日 08:40:05   作者:hu_beliefs  
這篇文章主要介紹了Java實現(xiàn)的分頁工具類與用法,結(jié)合完整實例形式分析了java分頁工具類的定義、使用方法及相關(guān)操作技巧,需要的朋友可以參考下

本文實例講述了Java實現(xiàn)的分頁工具類與用法。分享給大家供大家參考,具體如下:

今天閑來沒事,寫了一個頁面的分頁工具類,具有很好的兼容性與實用性哦。

不管怎么樣,先來瞧一瞧:

package com.bw.utils;
/**
 * 分頁工具類
 *
 * @author H.ros
 *
 */
public class PageUtils2 {
    // 當前頁(從頁面獲取的當前頁碼,未計算)
    private int currentPage;
    // 前一頁
    private int prevPage;
    // 下一頁
    private int nextPage;
    // 尾頁
    private int lastPage;
    // 總記錄數(shù)
    private int count;
    // 每頁的條數(shù)
    private int pageSize = 3;
    // 分頁計入數(shù)(使用時調(diào)用的初始頁,計算后)
    private int pageRecord;
    // 頁面分頁模型(傳入頁面使用的DOM)
    private String page;
    // 有參構(gòu)造器
    public PageUtils2(String currentPage, int count, int pageSize) {
        init(currentPage, count, pageSize);
        initLastPage();
        initCurrentPage();
        initPrevPage();
        initNextPage();
        initPageRecord();
        initPage();
    }
    // 初始化三個重要元素
    private void init(String currentPage, int count, int pageSize) {
        if (currentPage == null || currentPage == "" || currentPage == "0") {
            currentPage = "1";
        }
        this.currentPage = Integer.parseInt(currentPage);
        this.count = count;
        this.pageSize = pageSize;
    }
    // 初始化尾頁
    private void initLastPage() {
        if (count % pageSize == 0) {
            lastPage = count / pageSize;
        } else {
            lastPage = count / pageSize + 1;
        }
    }
    // 初始化并矯正當前頁(防止外部訪問出錯)
    private void initCurrentPage() {
        if (currentPage < 1) {
            currentPage = 1;
        } else if (currentPage > lastPage) {
            currentPage = lastPage;
        }
    }
    // 初始化上一頁
    private void initPrevPage() {
        if (currentPage != 1) {
            prevPage = currentPage - 1;
        }else{
            prevPage = 1;
        }
    }
    // 初始化下一頁
    private void initNextPage() {
        if (currentPage != lastPage) {
            nextPage = currentPage + 1;
        }else{
            nextPage = lastPage;
        }
    }
    // 初始化分頁計入數(shù)
    private void initPageRecord() {
        pageRecord = (currentPage - 1) * pageSize;
    if(pageRecord < 0){
      pageRecord = 0;
    }
    }
    // 初始化頁面分頁模型(按鍵中的class屬性是bootstrap的樣式)
    private void initPage() {
        page = "第" + currentPage + "/" + lastPage + "頁,共" + count + "條記錄。";
        page += "<input type='button' value='首頁' οnclick='page(1)' class='btn btn-sm'/>";
        page += "<input type='button' value='上一頁' οnclick='page(" + prevPage + ")' class='btn btn-sm'/>";
        page += "<input type='button' value='下一頁' οnclick='page(" + nextPage + ")' class='btn btn-sm'/>";
        page += "<input type='button' value='尾頁' οnclick='page(" + lastPage + ")' class='btn btn-sm'/>";
    }
    /*
     * 對外訪問通道
     */
    public int getCurrentPage() {
        return currentPage;
    }
    public int getPrevPage() {
        return prevPage;
    }
    public int getNextPage() {
        return nextPage;
    }
    public int getLastPage() {
        return lastPage;
    }
    public int getCount() {
        return count;
    }
    public int getPageSize() {
        return pageSize;
    }
    public int getPageRecord() {
        return pageRecord;
    }
    public String getPage() {
        return page;
    }
}

使用方法:

里面很多的地方都會計算好,使用時只用傳入三個參數(shù):

//currentPage是從前臺傳來的當前頁碼,count是數(shù)據(jù)的總統(tǒng)計數(shù),pageSize是每頁顯示的條數(shù),
//count必須是數(shù)據(jù)中的查詢結(jié)果哦。這樣才能與前臺保持頁碼一致。
PageUtils util = new PageUtils(currentPage, count, pageSize);

然后直接將它的一個Page屬性傳入前臺頁面就行:

mv.addObject("page", util.getPage());

在前臺頁面直接用EL表達式接收解析:

${page}

在js中要設(shè)置一個函數(shù):

function page(){}
//因為工具類中添加的是onclick的js點擊事件,我們必須使用js的一個函數(shù)來進行后臺處理;
//如果不想使用,在工具類中刪除即可。

若有不對的地方,還望大神們不吝賜教。

更多java相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java面向?qū)ο蟪绦蛟O(shè)計入門與進階教程》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總

希望本文所述對大家java程序設(shè)計有所幫助。

相關(guān)文章

  • springboot2 生產(chǎn)部署注意事項及示例代碼

    springboot2 生產(chǎn)部署注意事項及示例代碼

    這篇文章主要介紹了springboot2 生產(chǎn)部署注意事項及示例代碼,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-04-04
  • Java中三種簡單注解介紹和代碼實例

    Java中三種簡單注解介紹和代碼實例

    這篇文章主要介紹了Java中三種簡單注解介紹和代碼實例,本文講解了Override注解、Deprecated注解、Suppresswarnings注解、元注解等內(nèi)容,需要的朋友可以參考下
    2014-09-09
  • Java實現(xiàn)AOP代理的三種方式詳解

    Java實現(xiàn)AOP代理的三種方式詳解

    AOP是一種設(shè)計思想,是軟件設(shè)計領(lǐng)域中的面向切面編程,它是面向?qū)ο缶幊痰囊环N補充和完善。本文將用Java實現(xiàn)AOP代理的三種方式,需要的可以參考一下
    2022-07-07
  • Springboot整合redis實現(xiàn)發(fā)布訂閱功能介紹步驟

    Springboot整合redis實現(xiàn)發(fā)布訂閱功能介紹步驟

    發(fā)布訂閱作為一種設(shè)計思想在很多開源組件中都有體現(xiàn),比如大家熟知的消息中間件等,可謂把發(fā)布訂閱這一思想體現(xiàn)的淋漓盡致了
    2022-09-09
  • IntelliJ IDEA報錯Error:java: Compilation failed: internal java compiler error的解決辦法

    IntelliJ IDEA報錯Error:java: Compilation failed: internal java

    今天小編就為大家分享一篇關(guān)于IntelliJ IDEA報錯Error:java: Compilation failed: internal java compiler error的解決辦法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-10-10
  • java開發(fā)實現(xiàn)五子棋游戲

    java開發(fā)實現(xiàn)五子棋游戲

    這篇文章主要為大家詳細介紹了java開發(fā)實現(xiàn)五子棋游戲,具有雙人對戰(zhàn)和人機對戰(zhàn)功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • Java構(gòu)造方法實例詳解(動力節(jié)點java學(xué)院整理)

    Java構(gòu)造方法實例詳解(動力節(jié)點java學(xué)院整理)

    其實java構(gòu)造方法很簡單,下面通過示例給大家分享java構(gòu)造方法,非常不錯,具有參考借鑒價值,需要的朋友參考下
    2017-04-04
  • spring boot使用自定義配置的線程池執(zhí)行Async異步任務(wù)

    spring boot使用自定義配置的線程池執(zhí)行Async異步任務(wù)

    這篇文章主要介紹了spring boot使用自定義配置的線程池執(zhí)行Async異步任務(wù),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • mybatis插件pageHelper實現(xiàn)分頁效果

    mybatis插件pageHelper實現(xiàn)分頁效果

    這篇文章主要為大家詳細介紹了mybatis插件pageHelper實現(xiàn)分頁效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • SpringBoot切面實現(xiàn)token權(quán)限校驗詳解

    SpringBoot切面實現(xiàn)token權(quán)限校驗詳解

    這篇文章主要介紹了SpringBoot切面實現(xiàn)token權(quán)限校驗詳解,要實現(xiàn)權(quán)限校驗,首先數(shù)據(jù)表和實體類上需要有權(quán)限字段,我的表中permission和gender是通過外鍵約束permission表和gender表實現(xiàn)枚舉的,因為可拓展性更好,需要的朋友可以參考下
    2024-01-01

最新評論