struts2 中的默認的日期輸出並不符合我們的中文日常習慣,以下是我知道的在struts2中進行日期格式化輸出的幾種方式。
1、利用 <s:date>進行格式化,如:
<s:date format="yyyy-MM-dd"/>就是將屬性birthday按yyyy-MM-dd的格式進行輸出。
2、利用<s:param>進行格式化,如:
<s:textfield name="mydate">
<s:param name="value" ><s:date name="mydate" format="yyyy-MM-dd"/></s:param>
</s:textfield>
或者<input type="text" value="<s:date format="yyyy-MM-dd" />" />
3、通過國際化的方式:
首先在struts.properties中配置struts.custom.i18n.resources=globalMessages。
然後在globalMessages_zh_CN.properties和globalMessages_en_US.properties文件中添加如下內容:
global.datetime = {0, date, yyyy-MM-dd HH:mm:ss}
global.date = {0, date, yyyy-MM-dd}
最後在頁面中使用下面的語句就可以實現日期的格式化輸出了:
<s:textfield name="birthday" value="%{getText('global.date',{birthday})}"/>
//golbal.date樣式
<s:textfield name="birthday" value="%{getText('global.datetime',{birthday})}"/>
//global.datetime樣式
相信以上的三種日期格式化方法足以解決你所遇到的問題。