`
Listen_ing
  • 浏览: 35343 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

PageHelper (分页导航类,根据当前页计算导航链接)

阅读更多
public class PageHelper {
   
    /** Hibernate分页属性之一,起始数据位�?*/
    private int firstResult = 0;
    /** Hibernate分页属性之一,读取的�?��记录�?*/
    private int maxResults = 10;
    /** 页面显示记录数,默认通maxResults */
    private int pageSize = 10;
    /** 当前页数,设置完当前页数可自动计算出起始数据位置firstResult */
    private int currentPage = 0;
    /** 由totalRows和pageSize自动计算得出 */
    private int totalPages = 0;
    /** 记录总数 */
    private int totalRows = 0;
    /** 分页得到的结果集 */
    @SuppressWarnings("unchecked")
    private List results = Collections.emptyList();
    /** 是否自动获取记录总数 */
    private boolean autoCount = false;


    public int getFirstResult() {
       firstResult = currentPage - 1 < 0 ? 0 : (currentPage - 1) * pageSize;
       return firstResult;
    }


    public int getMaxResults() {
       return maxResults;
    }


    public void setMaxResults(int maxResults) {
       this.maxResults = maxResults;
       this.pageSize = this.maxResults;
    }


    public int getPageSize() {
       return pageSize;
    }


    public void setPageSize(int pageSize) {
       this.pageSize = pageSize;
       this.maxResults = this.pageSize;
    }


    public int getCurrentPage() {
       return currentPage;
    }


    public void setCurrentPage(int currentPage) {
       this.currentPage = currentPage;
    }


    public int getTotalPages() {
       totalPages = this.totalRows % this.pageSize > 0 ? this.totalRows
              / this.pageSize + 1 : this.totalRows / this.pageSize;
       return totalPages;
    }


    public int getTotalRows() {
       return totalRows;
    }


    public void setTotalRows(int totalRows) {
       this.totalRows = totalRows;
    }


    /**
     * @return the results
     */
    @SuppressWarnings("unchecked")
    public List getResults() {
       return results;
    }


    /**
     * @param results
     *            the results to set
     */
    @SuppressWarnings("unchecked")
    public void setResults(List results) {
       this.results = results;
    }


    /**
     * @return the autoCount
     */
    public boolean isAutoCount() {
       return autoCount;
    }


    /**
     * @param autoCount the autoCount to set
     */
    public void setAutoCount(boolean autoCount) {
       this.autoCount = autoCount;
    }
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics