pagecounter.java

来自「企业管理信息系统 myeclipse+mysql+hibernate+stru」· Java 代码 · 共 138 行

JAVA
138
字号

package com.emis.dbservice.hibernate;

/**
 *
 * @author Administrator
 */
public class PageCounter {
    private int totalRows;  //数据总行数
    private int totalPages;  //总页数
    private int currentPage = 1; //当前页,默认第一页
    private int maxSize = 5;    //一页最多5条记录
    private int firstRow = 0;    //第一行。

    /** Creates a new instance of PageCounter */
    public PageCounter() {
    }

    public int getTotalRows() {
        return totalRows;
    }

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

    public int getTotalPages() {
        return totalPages;
    }

    public void setTotalPages(int totalPages) {
        this.totalPages = totalPages;
    }

    public int getCurrentPage() {
        return currentPage;
    }

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

    public int getMaxSize() {
        return maxSize;
    }

    public void setMaxSize(int maxSize) {
        this.maxSize = maxSize;
    }

    public int getFirstRow() {
        return firstRow;
    }

    public void setFirstRow(int firstRow) {
        this.firstRow = firstRow;
    }
    
    /**
     * 
     * @param type
     */
    public void counter(String type) {
        type = type.toLowerCase();
        if (type.equals("first")) {
            first();
        }
        else if (type.equals("last")) {
            last();
        }
        else if (type.equals("next")) {
            next();
        }
        else if (type.equals("previous")) {
            previous();
        }
    }
    
    /**
     * 表示第一页第0行
     *
     */
    private void first() {
        currentPage = 1;
        firstRow = 0;
    }
    
    /**
     * 
     *
     */
    private void previous() {
        if (totalPages == 0) {
            currentPage = 1;
        }
        else {
            if (currentPage == 1) {
                currentPage = totalPages;
            }
            else {
                currentPage--;
            }
        }
        firstRow = (currentPage - 1) * maxSize;//当前页第一行
    }
    
    /**
     * 
     *
     */
    private void next() {
        if (totalPages == 0) {
            currentPage = 1;
        }
        else {
            if (currentPage < totalPages) {
                currentPage++;
            }
            else if (currentPage == totalPages) {
                currentPage = 1;
            }
        }
        firstRow = (currentPage - 1) * maxSize;
    }
    
    /**
     * 最后一页
     *
     */
    private void last() {
        currentPage = totalPages;
        if (totalPages == 0) {
            currentPage = 1;
        }
        firstRow = (currentPage - 1) * maxSize;
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?