封装的分页

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;
	}
}
相关文章
相关标签/搜索