這篇文章給大家介紹使用Java怎么實現(xiàn)一個分頁工具類,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
成都創(chuàng)新互聯(lián)從2013年開始,是專業(yè)互聯(lián)網(wǎng)技術服務公司,擁有項目做網(wǎng)站、成都做網(wǎng)站網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元洛隆做網(wǎng)站,已為上家服務,為洛隆各地企業(yè)和個人服務,聯(lián)系電話:18980820575
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; // 有參構造器 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 += ""; page += ""; page += ""; page += ""; } /* * 對外訪問通道 */ 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ù)中的查詢結果哦。這樣才能與前臺保持頁碼一致。 PageUtils util = new PageUtils(currentPage, count, pageSize);
然后直接將它的一個Page屬性傳入前臺頁面就行:
mv.addObject("page", util.getPage());
在前臺頁面直接用EL表達式接收解析:
${page}
在js中要設置一個函數(shù):
function page(){} //因為工具類中添加的是onclick的js點擊事件,我們必須使用js的一個函數(shù)來進行后臺處理; //如果不想使用,在工具類中刪除即可。
關于使用Java怎么實現(xiàn)一個分頁工具類就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。