封裝的分頁

package com.bjsxt.util;

import java.io.IOException;
import java.util.Properties;

/**
 * 分頁信息
 * @author Administrator
 *
 */
public class PageUtil {
	private int pageNum;      	//當前是第幾頁
	private int rowsCount;   	//一共有多少條記錄
	private int pageCount;   	//一共有多少頁
	private int rowStart;   	//查詢從多少行開始
	private int everyPageStart; 	//每一個頁面顯示的頁碼開始
	private int everyPageEnd;   	//每一個頁面顯示的頁碼結束
	private boolean hasNextPage;  	//是否有下一頁
	private boolean hasPreviouspage;  	//是否有上一頁
	private int firstPageNum;  	//首頁
	private int previousPageNum;  	//上一頁
	private int nextPageNum;  	//下一頁
	private int lastPageNum;  	//尾頁
	private String linkAddr;   	//連接地址
	private static int pageSize;   	//每頁有多少條記錄
	private static int everyPageCount;  	//每一個頁面顯示多少個頁碼
	private static Properties p = new Properties();
	
	static {
		try {
			p.load(PageUtil.class.getClassLoader().getResourceAsStream("pageUtil.properties"));
			everyPageCount = Integer.parseInt(p.getProperty("everyPageCount"));
			pageSize = Integer.parseInt(p.getProperty("pageSize"));
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

	public PageUtil() {

	}

	public PageUtil(String pageNumString, int rowsCount) {
		this.pageNum = (pageNumString == null ? 1 : Integer.parseInt(pageNumString));
		this.rowsCount = rowsCount;
	}

	public int getPageSize() {
		return pageSize;
	}

	public int getPageNum() {
		return pageNum;
	}

	public void setPageNum(int pageNum) {
		this.pageNum = pageNum;
	}

	public int getRowsCount() {
		return rowsCount;
	}

	public void setRowsCount(int rowsCount) {
		this.rowsCount = rowsCount;
	}

	public int getPageCount() {
		pageCount = (int) Math.ceil(rowsCount * 1.0 / pageSize);
		return pageCount;
	}

	public int getRowStart() {
		rowStart = (pageNum - 1) * pageSize;
		return rowStart;
	}

	public int getEveryPageCount() {
		return everyPageCount;
	}

	public int getEveryPageStart() {
		everyPageStart = pageNum - (everyPageCount / 2) > 0 ? pageNum - (everyPageCount / 2) : 1;
		return everyPageStart;
	}

	public int getEveryPageEnd() {
		everyPageEnd = pageNum + (everyPageCount / 2 - 1) > pageCount ? pageCount : pageNum + (everyPageCount / 2 - 1);
		return everyPageEnd;
	}

	public boolean isHasNextPage() {
		return pageNum < pageCount;
	}

	public boolean isHasPreviouspage() {
		return pageNum > 1;
	}

	public int getFirstPageNum() {
		return 1;
	}

	public int getPreviousPageNum() {
		return pageNum - 1;
	}

	public int getNextPageNum() {
		return pageNum + 1;
	}

	public int getLastPageNum() {
		return pageCount;
	}

	public String getLinkAddr() {
		return linkAddr;
	}

	public void setLinkAddr(String linkAddr) {
		this.linkAddr = linkAddr;
	}
}
相關文章
相關標籤/搜索