package org.quickbundle.base.web.page; import org.quickbundle.base.vo.RmValueObject; import org.quickbundle.config.RmBaseConfig; public class RmPageVo extends RmValueObject { /** * */ private static final long serialVersionUID = 1L; public RmPageVo() { super(); } /** * 构造函数: * @param recordCount 记录总数 * @param pageSize 每页有多少条记录 */ public RmPageVo(int recordCount, int pageSize) { this(); if(recordCount < 0) { recordCount = 0; } if(pageSize < 1) { pageSize = RmBaseConfig.getSingleton().getDefaultPageSize(); } this.recordCount = recordCount; this.pageSize = pageSize; } /** * recordCount 表示: 记录总数 */ private int recordCount; /** * pageSize 表示: 每页有多少条记录 */ private int pageSize; /** * currentPage 表示: 当前第几页 */ private int currentPage = 1; /** * 功能: 获得总页数 * * @return */ public int getPageCount() { int pc = recordCount / pageSize + (recordCount % pageSize == 0 ? 0 : 1); if(pc == 0) { pc = 1; } return pc; } /** * 功能: 获得开始条数 * * @return */ public int getStartIndex() { return (currentPage - 1) * pageSize + 1; } public int getCurrentPage() { return currentPage; } public void setCurrentPage(int currentPage) { if(currentPage <= 1 || getPageCount() == 0) { currentPage = 1; } else if(currentPage > getPageCount()) { currentPage = getPageCount(); } this.currentPage = currentPage; } public int getPageSize() { return pageSize; } public void setPageSize(int pageSize) { this.pageSize = pageSize; } public int getRecordCount() { return recordCount; } public void setRecordCount(int recordCount) { this.recordCount = recordCount; } public static void main(String[] args) { System.out.println(new RmPageVo()); } }