Myfaces组件分页的简单使用

Myfaces组件分页的简单使用

Myfaces组件分页的简单使用

                                      

Myfaces组件提供t:dataScroller标签实现分页,很傻瓜化。

       JSF页面:

       <t:dataTable id=”userListTable” rows=”10”>

       …………

       </t:dataTable>

                       <t:dataScroller id="userListscroll"

                                for="userTable"

                                fastStep="10"

                                rowsCountVar="rowsCount"

                                displayedRowsCountVar="displayedRowsCountVar"

                                firstRowIndexVar="firstRowIndex"

                                lastRowIndexVar="lastRowIndex"

                                pageCountVar="pageCount"

                                pageIndexVar="pageIndex"

                                styleClass="scroller"

                                paginator="true"

                                paginatorMaxPages="9"

                                paginatorTableClass="paginator"

                                paginatorActiveColumnStyle="font-weight:bold;"

                                immediate="false">

                    <f:facet name="first" >

                        <h:outputText value="first"/>

                    </f:facet>

                    <f:facet name="last">

                        <h:outputText value="last"/>

                    </f:facet>

                    <f:facet name="previous">

                        <h:outputText value="previous"/>

                    </f:facet>

                    <f:facet name="next">

                        <h:outputText value="next"/>

                    </f:facet>

                    <f:facet name="fastforward">

                        <h:outputText value="fastforward"/>

                    </f:facet>

                    <f:facet name="fastrewind">

                        <h:outputText value="fastrewind"/>

                    </f:facet>

                    <h:outputFormat value="总记录数:{0}条——这页显示了{1}条记录——这页显示第{2}到第{3}条记录——页数:{4}/{5}">

                            <f:param value="#{rowsCount}" />

                            <f:param value="#{displayedRowsCountVar}" />

                            <f:param value="#{firstRowIndex}" />

                            <f:param value="#{lastRowIndex}" />

                            <f:param value="#{pageIndex}" />

                            <f:param value="#{pageCount}" />

                    </h:outputFormat>

                </t:dataScroller>

       要给dataTable设置idrows(每页要显示的行数)

       我们配置t:dataScroller的一些属性:

for          必须指定,值对应要实现分页的dataTableid值。

fastStep          表示fastforwardfastrewind快进的页数。

paginator        是否显示页数变化轨迹,即是否显示1234……

paginatorMaxPages        指定页数变化轨迹中的数量

       dataScroller还有6个属性用于显示一些常用的值:

{0} rowsCountVar="rowsCount"        //总记录数{0}

{1} displayedRowsCountVar="displayedRowsCountVar"    //这页显示了{1}条记录

       {2} firstRowIndexVar="firstRowIndex"     //这页显示第{2}到第{3}条记录

       {3} lastRowIndexVar="lastRowIndex"        //这页显示第{2}到第{3}条记录

       {4} pageCountVar="pageCount"          //当前所在的页数为{4}

{5} pageIndexVar="pageIndex"           //总页数为{5}

要注意第二个属性displayedRowsCountVar,它表示这页显示了多少条记录,跟dataTable里面的rows属性不同,rows表示每页固定显示多少条记录。

对于一般少数量数据来讲,这样实现分页就可以了,而对于海量的数据而言,需要实现数据库分页。

你可能感兴趣的:(Myfaces组件分页的简单使用)