標籤:java web
分頁類分享:
package com.hcj.util;import java.util.ArrayList;import java.util.List;import org.apache.struts2.json.annotations.JSON;//分頁類public class Page<E> {private int totals; //查詢到的總數量 private List<E> bigList ; //總記錄集 private List<E> smallList; //當頁顯示的記錄集 private int currentPage = 1; //當前頁 private int pages; //總頁數 private int pageSize = 8; //每頁記錄數 private int privious; //上一頁 private int next; //下一頁 private boolean firstPage = false;//第一頁 private boolean lastPage = false; //最後一頁 public int getTotals() {return totals;}public void setTotals(int totals) {this.totals = totals;}@JSON(serialize=false) public List<E> getBigList() {return bigList;}public void setBigList(List<E> bigList) {this.bigList = bigList;}public List<E> getSmallList() {this.smallList = new ArrayList<E>(); for (int i = (currentPage - 1) * pageSize; (i < currentPage* pageSize)&& (i < totals); i++) { smallList.add(bigList.get(i)); } return smallList;}public void setSmallList(List<E> smallList) {this.smallList = smallList;}public int getCurrentPage() {return currentPage;}public void setCurrentPage(int currentPage) {this.currentPage = currentPage;}public int getPages() {if (totals % pageSize == 0) { pages = totals / pageSize; } else { pages = totals / pageSize + 1; }return pages;}public void setPages(int pages) {this.pages = pages;}public int getPageSize() {return pageSize;}public void setPageSize(int pageSize) {this.pageSize = pageSize;}public int getPrivious() {if(currentPage != 1){ privious = currentPage - 1; }else{ privious = 1; }return privious;}public void setPrivious(int privious) {this.privious = privious;}public int getNext() {if(currentPage != getPages()){ next = currentPage + 1; }else{ next = currentPage; }return next;}public void setNext(int next) {this.next = next;}public boolean isFirstPage() {if(currentPage == 1){ firstPage = true; }return firstPage;}public void setFirstPage(boolean firstPage) {this.firstPage = firstPage;}public boolean isLastPage() {if(currentPage == getPages()){ lastPage = true; }return lastPage;}public void setLastPage(boolean lastPage) {this.lastPage = lastPage;}public Page() {super();// TODO Auto-generated constructor stub}//輸入總結果,當前頁和每頁大小(預設為8頁)public Page(List<E> bigList, int currentPage, int pageSize) {super();this.bigList = bigList;this.currentPage = currentPage;this.pageSize = pageSize;//設定總的total,這步很重要this.setTotals(bigList.size());}public Page(List<E> bigList, int currentPage) {super();this.bigList = bigList;this.currentPage = currentPage;this.setTotals(bigList.size());} }
Java Web分頁類分享