亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Java > 正文

Java(基于Struts2) 分頁實現代碼

2019-11-26 15:57:20
字體:
來源:轉載
供稿:網友

分頁實現的基本過程是這樣的:

1. 設置自己的分頁器的基本參數(可以從配置文件中讀?。?/P>

  ■每頁顯示的記錄條數

  ■每次最多顯示多少頁

2. 編寫設置分頁器其他參數的函數

    主要參數有以下幾個:

    總記錄條數

    總頁數

    當前頁號:現在顯示的頁數

    每頁顯示的記錄條數

    當前頁開始行(第一行是0行)

    第一頁頁號

    最后頁頁號

    下一頁頁號

    上一頁頁號

    畫面上顯示的起始頁號

    畫面上顯示的結束頁號

    參數基本實現原理:設置以上各個參數,實際上只需要三個參數就可以對所有的其他變量進行設置,即總記錄條數,每頁顯示記錄數,每次最多顯示多少頁。

    分頁器的代碼實現如下(省略get,set函數):

    Page.java

復制代碼 代碼如下:

{
        this.onePageSize = Integer.valueOf(PageResource.get(PageResource.ONE_PAGE_SIZE));
        this.displayPageCount = Integer.valueOf(PageResource.get(PageResource.DISPLAY_PAGE_COUNT)) - 1;
    }

    /** 頁號式導航, 最多顯示頁號數量為displayPageCount+1 */
    private int displayPageCount;

    /** 每頁顯示的記錄條數 */
    private int onePageSize;

    /** 總記錄條數 */
    private int totalRecord;

    /** 總頁數 */
    private int totalPage;

    /** 當前頁號 */
    private int currentPageNum = 1;

    /** 當前頁開始行(第一行是0行) */
    private int currentStartRow;

    /** 第一頁頁號 */
    private int firstPageNum = 1;

    /** 最后頁頁號 */
    private int lastPageNum;

    /** 下一頁頁號 */
    private int nextPageNum;

    /** 上一頁頁號 */
    private int prevPageNum;

    /** 頁號式導航 起始頁號 */
    private int startPageNum;

    /** 頁號式導航 結束頁號 */
    private int endPageNum;

    /**
     *
     * @param onePageSize
     * @param currentPageNum
     * @param totalRecord
     */
    public Page(int totalRecord) {
        this.totalRecord = totalRecord;
        this.setPageInfo();
    }

    public Page() {
    }

    public void setPageInfo() {
        this.totalPage = (totalRecord + onePageSize - 1) / onePageSize;
        this.currentPageNum = Math.max(1, Math.min(currentPageNum, totalPage));

        this.lastPageNum = this.totalPage;
        this.nextPageNum = Math.min(this.totalPage, this.currentPageNum + 1);
        this.prevPageNum = Math.max(1, this.currentPageNum - 1);

        // 分頁控制信息
        this.currentStartRow = (this.currentPageNum - 1) * onePageSize;

        startPageNum = Math.max(this.currentPageNum - displayPageCount / 2,
                firstPageNum);
        endPageNum = Math.min(startPageNum + displayPageCount, lastPageNum);
        if (endPageNum - startPageNum < displayPageCount) {
            startPageNum = Math.max(endPageNum - displayPageCount, 1);
        }
    }


3. 編寫前端代碼(以Struts2為例)

當在前臺點擊各個跳轉頁面的鏈接時,只需要將要跳轉到的頁號和總頁數傳給后臺,后臺會重新更新分頁器,進而實現頁碼的跳轉。

復制代碼 代碼如下:

<div>
            <div>
                總頁數:
                <s:property value="#request.p.totalPage" />
                總記錄數:
                <s:property value="#request.p.totalRecord" />
            </div>
            <s:url id="firstURL" action="PageAction!toPage">
                <s:param name="p.currentPageNum">
                    <s:property value="#request.p.firstPageNum" />
                </s:param>
                <s:param name="p.totalRecord">
                    <s:property value="#request.p.totalRecord" />
                </s:param>
            </s:url>
            <s:a href="%{firstURL}">首頁</s:a>

            <s:url id="prev" action="PageAction!toPage">
                <s:param name="p.currentPageNum">
                    <s:property value="#request.p.prevPageNum" />
                </s:param>
                <s:param name="p.totalRecord">
                    <s:property value="#request.p.totalRecord" />
                </s:param>
            </s:url>
            <s:a href="%{prev}">上一頁</s:a>

            <s:bean name="org.apache.struts2.util.Counter" id="counter">
                <s:param name="first" value="p.startPageNum" />
                <s:param name="last" value="p.endPageNum" />
                <s:iterator var="pageNum">
                    <s:if test="p.currentPageNum==#pageNum">
                        <s:property />
                    </s:if>
                    <s:else>
                        <s:url id="page" action="PageAction!toPage">
                            <s:param name="p.currentPageNum">
                                <s:property value="#pageNum" />
                            </s:param>
                            <s:param name="p.totalRecord">
                                <s:property value="#request.p.totalRecord" />
                            </s:param>
                        </s:url>
                        <s:a href="%{page}"><s:property /></s:a>
                    </s:else>
                </s:iterator>
            </s:bean>

            <s:url id="next" action="PageAction!toPage">
                <s:param name="p.currentPageNum">
                    <s:property value="#request.p.nextPageNum" />
                </s:param>
                <s:param name="p.totalRecord">
                    <s:property value="#request.p.totalRecord" />
                </s:param>
            </s:url>
            <s:a href="%{next}">下一頁</s:a>

         <s:url id="lastURL" action="PageAction!toPage">
                <s:param name="p.currentPageNum">
                    <s:property value="#request.p.lastPageNum" />
                </s:param>
                <s:param name="p.totalRecord">
                    <s:property value="#request.p.totalRecord" />
                </s:param>
            </s:url>
         <s:a href="%{lastURL}">尾頁</s:a>
        </div>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
92看片淫黄大片看国产片| 国模gogo一区二区大胆私拍| 久久久精品亚洲| 国产欧美日韩中文字幕| 日本亚洲欧美成人| 国产精品久久77777| 欧美日韩黄色大片| 国产成人综合av| 欧美在线视频在线播放完整版免费观看| 黑人精品xxx一区一二区| 欧美日韩亚洲视频一区| 久久99久国产精品黄毛片入口| 色妞色视频一区二区三区四区| 精品久久久久久久久久久久久| 日日摸夜夜添一区| 亚洲国模精品一区| 日韩欧美在线网址| 午夜精品国产精品大乳美女| 亚洲999一在线观看www| 成人黄色av播放免费| 欧美高跟鞋交xxxxhd| 永久免费精品影视网站| 亚洲最新中文字幕| 秋霞av国产精品一区| 欧美性受xxx| 欧美第一黄网免费网站| 亚洲成人免费在线视频| 69av成年福利视频| 欧美性xxxxxxx| 中文日韩在线观看| 国产精品日韩av| 国产视频综合在线| 亚洲美女动态图120秒| 亚洲精品电影在线观看| 国产精品一区二区久久久久| 国产亚洲人成a一在线v站| www.日韩免费| 日韩中文字幕视频| 日韩视频一区在线| 中文字幕在线看视频国产欧美在线看完整| 亚洲va国产va天堂va久久| 国产一区二区三区丝袜| 韩曰欧美视频免费观看| 中文字幕欧美精品日韩中文字幕| 538国产精品视频一区二区| 岛国av在线不卡| 欧美日韩在线第一页| 久久6精品影院| 55夜色66夜色国产精品视频| 国产精品吊钟奶在线| 亚洲精品小视频在线观看| 日本欧美一级片| 91精品国产91久久久久久吃药| 国产精品∨欧美精品v日韩精品| 亚洲国产精品高清久久久| 狠狠色狠色综合曰曰| 亚洲在线免费观看| 亚洲xxxxx电影| 日韩精品在线播放| 久久久久久国产精品三级玉女聊斋| 国产精品入口免费视频一| 国产欧美精品在线| 日韩精品欧美激情| 亚洲国产福利在线| 欧美日产国产成人免费图片| 欧美激情久久久久久| 久久99精品久久久久久青青91| 国产欧美精品一区二区三区-老狼| 日韩免费高清在线观看| 97在线视频一区| 欧美性少妇18aaaa视频| 欧美日韩亚洲一区二区三区| 中文字幕在线国产精品| 国产欧美精品va在线观看| 欧美性猛交xxxx久久久| 国内外成人免费激情在线视频| 亚洲精品丝袜日韩| 国产午夜精品美女视频明星a级| 日韩一区二区久久久| 日本三级韩国三级久久| 这里只有精品视频| 久久久国产成人精品| 亚洲自拍偷拍网址| 欧美怡春院一区二区三区| 亚洲欧美在线免费观看| 亚洲欧美一区二区三区情侣bbw| 精品人伦一区二区三区蜜桃免费| 91精品国产高清自在线| 亚洲人成免费电影| 国产精品h在线观看| 日韩中文字幕欧美| 亚洲欧美综合精品久久成人| 精品一区二区三区四区| 亚洲人成网站777色婷婷| 国产在线拍偷自揄拍精品| 久久久在线免费观看| 一区二区三区动漫| 操人视频在线观看欧美| 国产欧美中文字幕| 国产在线精品成人一区二区三区| 欧洲s码亚洲m码精品一区| 另类美女黄大片| 国产做受69高潮| 欧美日韩一区二区在线播放| 97在线看免费观看视频在线观看| 久久综合五月天| 国产精品国语对白| 性欧美办公室18xxxxhd| 国产精品美女999| 亚洲福利在线视频| 亚洲精品av在线| 欧美怡春院一区二区三区| 亚洲第一二三四五区| 国产亚洲aⅴaaaaaa毛片| 一本色道久久综合亚洲精品小说| 亚洲xxxx在线| 欧美性开放视频| 欧美午夜影院在线视频| 亚洲自拍在线观看| 中文字幕亚洲国产| 亚洲自拍另类欧美丝袜| 精品自在线视频| 精品中文字幕乱| 亚洲电影免费观看高清完整版| 亚洲午夜激情免费视频| 2019亚洲男人天堂| 国产亚洲欧美aaaa| 正在播放国产一区| 精品亚洲永久免费精品| 国产免费一区二区三区香蕉精| 欧美激情精品久久久久| 一区二区三区在线播放欧美| 久久91亚洲精品中文字幕奶水| 国产一区二区三区视频在线观看| 福利视频一区二区| 欧美专区在线视频| 国产第一区电影| 成人深夜直播免费观看| 久久久久久成人精品| 亚洲丝袜av一区| 欧美日韩另类在线| 欧美日本在线视频中文字字幕| 国内精品伊人久久| 亚洲精品98久久久久久中文字幕| 2019中文字幕在线| www日韩中文字幕在线看| 欧美性视频网站| www.日韩视频| 欧美一区二区大胆人体摄影专业网站| 久久久综合av| 91久热免费在线视频| 97国产成人精品视频| 国产精品久久久久久av福利| 78色国产精品| 色视频www在线播放国产成人| 欧美一区三区三区高中清蜜桃| 国产91热爆ts人妖在线| 欧洲美女7788成人免费视频| 91国产视频在线播放| 清纯唯美日韩制服另类| 97福利一区二区| 欧美高清电影在线看| 午夜精品久久17c| 日韩精品视频在线免费观看|