【问题标题】:Sort by date the column in datatable按日期对数据表中的列进行排序
【发布时间】:2017-11-24 08:12:11
【问题描述】:

我正在使用 jsf2.2 primefaces 6.0,我正在尝试按日期对数据表列进行排序,如图所示:

我使用 sortBy" 属性对日期列进行排序,但没有发生任何事情。 如果在 primefaces 组件“p:column”上有一个可行的解决方案,或者使用 java 代码直接从 liste 中排序日期将被应用(Rq:我是一个初学者程序员)。

Xhtml代码:

<p:column headerText="Date dépot"  sortBy="#{a.dateDeDepot}" >
                        <h:outputText value="#{a.dateDeDepot}" >
                            <f:convertDateTime pattern="dd/MM/yyyy HH:mm:ss"
                                timeZone="GMT+1:00" />
                        </h:outputText>
                    </p:column>

java Bean 代码:

public List<Demande> getAllDemandes() {
        allDemandes = demandeServicesLocal.findAllDemandes();
        return allDemandes;
    }

【问题讨论】:

    标签: java arrays sorting primefaces jsf-2.2


    【解决方案1】:
    public List<Demande> getAllDemandes() {
        allDemandes = demandeServicesLocal.findAllDemandes();
        Collections.sort(allDemandes, new Comparator<Demande>()
        {
            @Override
            public int compare(Demande d1, Demande d2)
            {
                return d1.getdate().compareTo(d2.getdate());//use the name specified in the pojo class for getting the date in the place of 'getdate'
            }
        });
        return allDemandes;
    }
    

    升序和降序排序都可以通过改变返回类型来完成。

    【讨论】:

      【解决方案2】:

      如果不匹配询问,如何添加一个按钮以从视图或通过使用日历 primefaces 组件对表格进行升序和降序排序。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-10-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-10-19
        相关资源
        最近更新 更多