Hibernate Pager基礎介紹
作者:佚名 
  這里介紹Hibernate Pager類用于計算首頁、前一頁、下一頁、尾頁的在數(shù)據(jù)庫中的起始行,當前的頁碼。
 本文向大家介紹Hibernate Pager,可能好多人還不了解Hibernate Pager,沒有關系,看完本文你肯定有不少收獲,希望本文能教會你更多東西。 
 Hibernate Pager具體實現(xiàn)
1.Hibernate Pager類
- package com.jpcf.db.helper;
 - import java.math.*;
 - public class Pager {
 - private int totalRows; //總行數(shù)
 - private int pageSize = 10; //每頁顯示的行數(shù)
 - private int currentPage; //當前頁號
 - private int totalPages; //總頁
 - private int startRow; //當前頁在數(shù)據(jù)庫中的起始行
 - public Pager() {
 - }
 - public Pager(int _totalRows) {
 - totalRows = _totalRows;
 - totalPages=totalRows/pageSize;
 - int mod=totalRows%pageSize;
 - if(mod>0){
 - totalPages++;
 - }
 - currentPage = 1;
 - startRow = 0;
 - }
 - public int getStartRow() {
 - return startRow;
 - }
 - public int getTotalPages() {
 - return totalPages;
 - }
 - public int getCurrentPage() {
 - return currentPage;
 - }
 - public int getPageSize() {
 - return pageSize;
 - }
 - public void setTotalRows(int totalRows) {
 - this.totalRows = totalRows;
 - }
 - public void setStartRow(int startRow) {
 - this.startRow = startRow;
 - }
 - public void setTotalPages(int totalPages) {
 - this.totalPages = totalPages;
 - }
 - public void setCurrentPage(int currentPage) {
 - this.currentPage = currentPage;
 - }
 - public void setPageSize(int pageSize)
 - this.pageSize = pageSize;
 - }
 - public int getTotalRows() {
 - return totalRows;
 - }
 - public void first() {
 - currentPage = 1;
 - startRow = 0;
 - }
 - public void previous() {
 - if (currentPage == 1) {
 - return
 - }
 - currentPage--;
 - startRow = (currentPage - 1) * pageSize;
 - }
 - public void next() {
 - if (currentPage < totalPages) {
 - currentPage++;
 - }
 - startRow = (currentPage - 1) * pageSize;
 - }
 - public void last() {
 - currentPage = totalPages;
 - startRow = (currentPage - 1) * pageSize;
 - }
 - public void refresh(int _currentPage)
 - currentPage = _currentPage;
 - if (currentPage > totalPages) {
 - last();
 - }
 - }
 - }
 
Hibernate Pager類用于計算首頁、前一頁、下一頁、尾頁的在數(shù)據(jù)庫中的起始行,當前的頁碼。
2.Hibernate PagerHelp類
- package com.jpcf.db.helper;
 - import javax.servlet.http.*;
 - public class PagerHelper {
 - public static Pager getPager(HttpServletRequest httpServletRequest,
 - int totalRows) {
 - //定義pager對象,用于傳到頁面
 - Pager pager = new Pager(totalRows);
 - //從Request對象中獲取當前頁號String currentPage = httpServletRequest.
 - getParameter("currentPage");
 - //如果當前頁號為空,表示為首次查詢該頁
 - //如果不為空,則刷新pager對象,輸入當前頁號等信
 - if (currentPage != null) {
 - pager.refresh(Integer.parseInt(currentPage));
 - }
 - //獲取當前執(zhí)行的方法,首頁,前一頁,后一頁,尾頁。
 - String pagerMethod = httpServletRequest.getParameter("pageMethod");
 - if (pagerMethod != null) {
 - if (pagerMethod.equals("first")) {
 - pager.first()
 - } else if (pagerMethod.equals("previous")) {
 - pager.previous();
 - } else if (pagerMethod.equals("next")) {
 - pager.next();
 - } else if (pagerMethod.equals("last")) {
 - pager.last();
 - }
 - }
 - return pager;
 - }
 - }
 
Hibernate PagerHelper這個類,我不用說應該也知道用來干嘛了
【編輯推薦】
責任編輯:佚名 
                    來源:
                    IT168
 














 
 
 
 
 
 
 