牛骨文教育服务平台(让学习变的简单)
博文笔记

【Java公共类】分页Page开发

创建时间:2013-06-12 投稿人: 浏览次数:1583

分页Page

package utils.page;

public class Page {
	private int everyPage; // 每页显示记录数
	private int totalCount; // 总记录数
	private int totalPage; // 总页数
	private int currentPage; // 当前页
	private int beginIndex; // 查询起始点
	private boolean hasPrePage; // 是否有上一页
	private boolean hasNextPage; // 是否有下一页

	public Page(int everyPage, int totalCount, int totalPage, int currentPage,
			int beginIndex, boolean hasPrePage, boolean hasNextPage) { // 自定义构造方法
		this.everyPage = everyPage;
		this.totalCount = totalCount;
		this.totalPage = totalPage;
		this.currentPage = currentPage;
		this.beginIndex = beginIndex;
		this.hasPrePage = hasPrePage;
		this.hasNextPage = hasNextPage;
	}

	public Page() {
	} // 默认构造函数

	public int getEveryPage() { // 获得每页显示记录数
		return everyPage;
	}

	public void setEveryPage(int everyPage) {// 设置每页显示记录数
		this.everyPage = everyPage;
	}

	public int getTotalCount() {// 获得总记录数
		return totalCount;
	}

	public void setTotalCount(int totalCount) {// 设置总记录数
		this.totalCount = totalCount;
	}

	public int getTotalPage() {// 获得总页数
		return totalPage;
	}

	public void setTotalPage(int totalPage) {// 设置总页数
		this.totalPage = totalPage;
	}

	public int getCurrentPage() {// 获得当前页
		return currentPage;
	}

	public void setCurrentPage(int currentPage) {// 设置当前页
		this.currentPage = currentPage;
	}

	public int getBeginIndex() {// 获得查询起始点
		return beginIndex;
	}

	public void setBeginIndex(int beginIndex) {// 设置查询起始点
		this.beginIndex = beginIndex;
	}

	public boolean isHasPrePage() {// 获得是否有上一页
		return hasPrePage;
	}

	public void setHasPrePage(boolean hasPrePage) {// 设置是否有上一页
		this.hasPrePage = hasPrePage;
	}

	public boolean isHasNextPage() {// 获得是否有下一页
		return hasNextPage;
	}

	public void setHasNextPage(boolean hasNextPage) {// 设置是否有下一页
		this.hasNextPage = hasNextPage;
	}
}

分页工具类PageUtil

package utils.page;

public class PageUtil {
	public static Page createPage(int everyPage, int totalCount, int currentPage) {// 创建分页信息对象
		everyPage = getEveryPage(everyPage);
		currentPage = getCurrentPage(currentPage);
		int totalPage = getTotalPage(everyPage, totalCount);
		int beginIndex = getBeginIndex(everyPage, currentPage);
		boolean hasPrePage = getHasPrePage(currentPage);
		boolean hasNextPage = getHasNextPage(totalPage, currentPage);
		return new Page(everyPage, totalCount, totalPage, currentPage,
				beginIndex, hasPrePage, hasNextPage);
	}

	public static int getEveryPage(int everyPage) { // 获得每页显示记录数
		return everyPage == 0 ? 10 : everyPage;
	}

	public static int getCurrentPage(int currentPage) { // 获得当前页
		return currentPage == 0 ? 1 : currentPage;
	}

	public static int getTotalPage(int everyPage, int totalCount) {// 获得总页数
		int totalPage = 0;
		if (totalCount != 0 && totalCount % everyPage == 0) {
			totalPage = totalCount / everyPage;
		} else {
			totalPage = totalCount / everyPage + 1;
		}
		return totalPage;
	}

	public static int getBeginIndex(int everyPage, int currentPage) {// 获得起始位置
		return (currentPage - 1) * everyPage;
	}

	public static boolean getHasPrePage(int currentPage) {// 获得是否有上一页
		return currentPage == 1 ? false : true;
	}

	public static boolean getHasNextPage(int totalPage, int currentPage) { // 获得是否有上一页
		return currentPage == totalPage || totalPage == 0 ? false : true;
	}
}


声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。