首頁  >  文章  >  Java  >  java怎麼分頁

java怎麼分頁

angryTom
angryTom原創
2019-11-14 14:29:354747瀏覽

java怎麼分頁

java怎麼分頁

#實作原理很簡單,就是建立一個Page類,裡面放目前存取的頁數(這個是從客戶瀏覽器傳到後台的數據,所以你的分頁需要用它來定位記錄的條目)和每一頁顯示的記錄行數。

然後透過分頁計算就可以得出下列資料。 (假定你的頁數從1開始)

1、總頁數= 總記錄數/每頁大小,如果0!=總記錄數%每頁大小,那麼總頁數再1

2、目前頁數(從瀏覽器傳遞的參數取得)

3、表格記錄的起始位置=(目前頁數-1)*每頁大小

#4、總記錄數(select count(*) from [表名] [where [條件]],從資料庫查詢得到)

5、每頁大小,可以固定,也可以從頁面傳過來有了這幾個參數之後,就用sql語句查出對應的記錄就可以了。

mysql資料庫用limit 表記錄的起始位置,每頁大小語句加入到你的查詢語句最後面sqlserver資料庫用top語句和not in 來做

oracle資料庫用rownum來做

具體程式碼如下:

public class Page {
 
    private long totalCount = 0;// 总记录数
    private int pageNumber = 1;//  当前页号,默认显示第一页
    private int pageSize = 20; // 每页大小,默认每页20条
    private int totalPage = 0;// 总页数,默认为0
    private int startRow = 0;// 起始记录行号,默认为从表头开始
 
    /**
    * 分页计算方法,由setTotalCount调用
    */
    public void pagination() {
                // 计算总页数
        if (this.totalCount % pageSize == 0)
            this.totalPage = new Long(this.totalCount / pageSize).intValue();
        else
            this.totalPage = new Long(this.totalCount / pageSize).intValue() + 1;
                // 排除错误页号
        if (this.pageNumber < 1)
            this.pageNumber = 1;
        if (this.pageNumber > this.totalPage)
            this.pageNumber = this.totalPage;
                // 计算起始行号
        this.startRow = (this.pageNumber - 1) * this.pageSize;
    }
    public long getTotalCount() {
        return totalCount;
    }
    public void setTotalCount(long totalCount) {
        this.totalCount = totalCount;
        this.pagination();
    }
    public int getPageNumber() {
        return pageNumber;
    }
    public void setPageNumber(int pageNumber) {
        this.pageNumber = pageNumber;
    }
    public int getPageSize() {
        return pageSize;
    }
    public void setPageSize(int pageSize) {
        this.pageSize = pageSize;
    }
    public int getTotalPage() {
        return totalPage;
    }
    public void setTotalPage(int totalPage) {
        this.totalPage = totalPage;
    }
    public int getStartRow() {
        return startRow;
    }
    public void setStartRow(int startRow) {
        this.startRow = startRow;
    }
}

前端採用jsp,透過html和計算得出的資料進行分頁展示即可。

php中文網,大量的免費Java入門教學,歡迎線上學習! 

以上是java怎麼分頁的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:java怎麼更新下一篇:java怎麼更新