如何在 af:column adf table 中将日期格式化为 yyyy/mm/dd?

how to format a date to yyyy/mm/dd in af:column adf table?

我有 af:table,其中 af:coulmn 包含日期。

日期显示格式为 mm/dd/yyyy : 7/16/2018

我想显示在 yyyy/mm/dd 2018/7/16

<af:column sortProperty="depositeDate" sortable="false" width="10%"
                 headerText="#{bundle.deposite_Date_Label}">
        <af:outputText value="#{row.depositeDate}"/>
</af:column>

如何实现?

您可以使用 DefaultDateFormatter 实现此目的:

DefaultDateFormatter ddf = new DefaultDateFormatter();
String depositeDate = ddf.format("yyyy/MM/dd, depositeDatePlain);

<af:outputText> 内添加 <af:convertDateTime> 标记,因此您的代码应如下所示:

<af:column sortProperty="depositeDate" sortable="false" width="10%" headerText="#{bundle.deposite_Date_Label}"> <af:outputText value="#{row.depositeDate}"> <af:convertDateTime pattern="yyyy/MM/dd" /> </af:outputText> </af:column> 有关 convertDateTime 标签的参考,请检查此 link.

PS: row.depositeDate 需要是日期对象,而不是字符串!