首先说说格式化日期。strtus2有提供一个<s:date/>来格式化日期,
例:<s:date value =Date" format="yyyy-MM-dd" />
这样可保证在不同的游览器中都显示为“2007-11-03”的格式。但这只能实现普通显示,如果要使用编辑组件呢?有两种简便方法:
1、使用struts2的dojo组件,<s:dateteimpicker/>
例:<s:datetimepicker name="Date" displayFormat="yyyy-MM-dd" />
2、使用JSTL
例:<s:textfield name="" value="${}" />
再说说格式化小数。Sturts2没有象JSTL一样提供一个<c:fmt>的格化式标签,所以要实现格式化比较麻烦一点。利用i18n与text来自定义实现小数格式化。
例:首先在class目录下创建一个Format.properties资源文件,
输入 FormatNumeral={0,number,##.000}
然后在页面引入这个定义。
<s:i18n name="Format">
<s:text name="FormatNumeral" >
<s:param value="aNumeral"/>
</s:text>
</s:i18n>
利用这个例子,还可以自定义多种格式化方式,相当灵活了。