<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    簡單易用的JSF翻頁組件

     

    新的QFaces組件scroller, 這是一個翻頁組件,直接綁定到dataTable中即可,使用非常簡單,組件會包含在1.5中發布,最近會進行一些測試,組件的性能很好,比網上大部分人所用到的LocalDataModel方式要好,從性能上和易用性上。
    從性能上,組件不會在生命周期中出現兩次調用數據的多余操作,并且刷新之后仍可停留在原來所在的頁面。
    從易用性上,只要實現一個非常簡單的方法綁定就可以,這已經近乎傻瓜式的了。
    現在可以在這里看到一些效果,html,及java代碼都有

    http://huliqing-qfaces.appspot.com/qfaces-example/ui-scroller.faces?qRecordStart=90

    預覽一下用法吧,
    html代碼
    <h:form>
                
    <q:scroller for="myDataTable" 
                    bind
    ="#{scrollerBean.loadData}"
                    displayCount
    ="true"
                    displayJump
    ="true"
                    displayPage
    ="10">
                    
    <h:dataTable id="myDataTable"  border="1" 
                        binding
    ="#{scrollerBean.myData}" 
                        value
    ="#{scrollerBean.people}" var="pl" width="500">
                        
    <h:column>
                            
    <h:outputText value="#{pl.name}" />
                        
    </h:column>
                        
                        
    <h:column>
                            
    <h:outputText value="#{pl.age}" />
                        
    </h:column>
                        
                        
    <h:column>
                            
    <h:outputText value="#{pl.birthday}" >
                                
    <f:convertDateTime pattern="yyyy-MM-dd"/>
                            
    </h:outputText>
                        
    </h:column>
                        
                        
    <h:column>
                            
    <h:commandButton value="Test" actionListener="#{scrollerBean.testListener}" />
                        
    </h:column>
                    
    </h:dataTable>
                
    </q:scroller>
            
    </h:form>

    看到組件所綁定的方法了嗎:bind="#{scrollerBean.loadData}" ,后臺代碼只要實現一個這樣的方法進行綁定就可以.

    后臺java代碼

    public PageModel loadData(long start) {
            
    // 設置自己的pageSize
            int pageSize = 10;
            
    // 模擬,從DB中獲取總記錄數
            long total = getTotalCount();
            
    // 模擬從DB中獲取一些數據,從start起pageSize條記錄
            ArrayList<Person> pageData = getFromDatabase(start, pageSize);
            
    // 把這幾個信息封裝成PageModel返回,OK
            PageModel pm = new PageModel();
            pm.setPageData(pageData);
            pm.setPageSize(pageSize);
            pm.setTotal(total);
            
    return pm;
        }

    你可能不明白start這個參數是怎么來的,這是scroller組件計算出來后給你的,當第一次加載頁面時它會是0,它代表著現在需要從數據庫中的第幾條數據讀取記錄,你只要根據start,再配合你自己設置的pageSize從數據庫獲取一頁數據返回給scroller組件就可以。返回類型是PageModel,這是QFaces組件包中的類.只是非常簡單的要求三個數據而已,一個當前頁的數據,一個總記錄數,一個pageSize.
    組件根據這三個數據可計算,并且渲染一個scroller翻頁導航。這還不是整個組件的完整面貌,它會變得更好的。
    我很喜歡這個項目:)
    最近又對QFaces作了大幅調整,調整了URL獲取資源的方式,QFaces.js拆分成了兩個文件QFaces-gen,QFaces-faces,命名空間也作了一些調整。
    tree組件修正了一些bug,并提高了友好性。inputHelp修正了在谷歌瀏覽器下的錯位問題,同時修正了上下左右鍵不能使用的問題。聯動組件現在的工作方式仍然顯得太積極,需要作一些調整。還有很多可以繼續改進的。喜歡JSF的朋友,有問題可以一起互相交流學習。

    話外,昨天把自己的JTM放到U盤下運行,感覺非常棒,現在帶著U盤或者手機就可以隨處移動自己的WEB演示系統了:), 不少朋友向我索要源碼,有些不好意思,這個小東西是免費的,你可以隨便用,沒有版權約束,但不是開源的。源碼我是拿來出售的。


    - huliqing@huliqing.name
    - http://www.huliqing.name

    posted on 2009-05-09 09:55 huliqing 閱讀(1815) 評論(4)  編輯  收藏 所屬分類: JSF

    評論

    # re: 簡單易用的JSF翻頁組件 2009-05-09 12:27 陽衡鋒

    看著有點像flex,不知道是誰像誰。JSF的編程模型確實不錯,他是asp.net和jsp的一個折中。我認為。  回復  更多評論   

    # re: 簡單易用的JSF翻頁組件 2009-05-09 13:50 huliqing

    @陽衡鋒
    JSF很靈活,你想要把它做得像什么就像什么。
    它可以把很多東西封裝起來。  回復  更多評論   

    # re: 簡單易用的JSF翻頁組件 2009-08-23 09:19 王兵

    lz 研究的兩個東西 jsf swing 我都沒有碰過

    最近想看看RCP開發 公司準備為自己的一個開發平臺 做一個eclipse插件

    感覺以后插件會是一種趨勢   回復  更多評論   

    # re: 簡單易用的JSF翻頁組件 2009-08-24 11:44 huliqing

    @王兵
    嗯,我確實對這兩個東西很感興趣。找一些自己感興趣的東西研究,有目標有努力就會使自己比較充實了。呵呵!  回復  更多評論   

    導航

    統計

    公告

    文章原創,歡迎轉載
    ——轉載請注明出處及原文鏈接

    隨筆分類(60)

    隨筆檔案(33)

    最新評論

    評論排行榜

    主站蜘蛛池模板: 国产精品永久免费| 国产免费久久精品99久久| 最近中文字幕国语免费完整 | 亚洲一级毛片免观看| 久久久久久曰本AV免费免费| 久久久亚洲欧洲日产国码二区| 99久久免费精品高清特色大片| 亚洲美女自拍视频| 欧美在线看片A免费观看| 国产AV旡码专区亚洲AV苍井空 | 亚洲精品久久久www| 亚洲天堂免费在线视频| 亚洲女久久久噜噜噜熟女| 免费看男人j放进女人j免费看| 婷婷久久久亚洲欧洲日产国码AV | 免费的黄色网页在线免费观看| 亚洲国产精品碰碰| a级毛片黄免费a级毛片| 亚洲宅男永久在线| 成人毛片18女人毛片免费96| 色屁屁www影院免费观看视频 | 婷婷亚洲久悠悠色悠在线播放| 最近中文字幕大全免费视频| 亚洲一区在线视频观看| 又粗又黄又猛又爽大片免费| 韩国免费a级作爱片无码| 久久久亚洲AV波多野结衣| 成人免费无毒在线观看网站| 免费看一级一级人妻片| 久久精品国产亚洲av成人| 国产精品免费观看久久| 亚洲一级片免费看| 亚洲国产精品白丝在线观看| 宅男666在线永久免费观看| 日韩精品无码免费专区午夜| 亚洲中文无码av永久| 午夜亚洲福利在线老司机| 一区二区三区四区免费视频| 精品国产日韩亚洲一区在线| 亚洲日韩精品A∨片无码| 毛片a级三毛片免费播放|