转载:struts标签<s:date>的使用
2013-06-28 11:15
525 查看
转载网址:http://blog.sina.com.cn/s/blog_510fdc8b01010vjx.html
s
truts标签:<s:date/>
作用:用来格式化显示日期的格式。
它可以用一种你指定的格式来显示(如:“yyyy-MM-dd”),可以生成通俗易懂的注释(如:in2hours,14minutes),或者用预先定义的一个格式来显示(如在properties配置文件中配置'struts.date.format').如果没有找到这个struts.date.format,则会找默认的DateFormat.MEDIUM来格式化你的日期对象。当然如果在值栈中没有找你对应的日期对象,则会返回空格。
可配置的标签属性有:
name
nice
format
下面这些功能的使用决定于nice属性与format属性。
1。nice属性为true
2.nice属性为false,format属性指定的格式如:dd/MM/yyyy
在这种情况下,format属性将被使用。
3。nice属性为false,format属性没有指定。
参数
s
truts标签:<s:date/>
作用:用来格式化显示日期的格式。
它可以用一种你指定的格式来显示(如:“yyyy-MM-dd”),可以生成通俗易懂的注释(如:in2hours,14minutes),或者用预先定义的一个格式来显示(如在properties配置文件中配置'struts.date.format').如果没有找到这个struts.date.format,则会找默认的DateFormat.MEDIUM来格式化你的日期对象。当然如果在值栈中没有找你对应的日期对象,则会返回空格。
可配置的标签属性有:
name
nice
format
下面这些功能的使用决定于nice属性与format属性。
1。nice属性为true
i18nkey | default |
struts.date.format.past | {0}ago |
struts.date.format.future | in{0} |
struts.date.format.seconds | aninstant |
struts.date.format.minutes | {0,choice,1#oneminute|1<{0}minutes} |
struts.date.format.hours | {0,choice,1#onehour|1<{0}hours}{1,choice,0#|1#,oneminute|1<,{1}minutes} |
struts.date.format.days | {0,choice,1#oneday|1<{0}days}{1,choice,0#|1#,onehour|1<,{1}hours} |
struts.date.format.years | {0,choice,1#oneyear|1<{0}years}{1,choice,0#|1#,oneday|1<,{1}days} |
在这种情况下,format属性将被使用。
3。nice属性为false,format属性没有指定。
i18nkey | default |
struts.date.format | ifoneisnotfoundDateFormat.MEDIUMformatwillbeused |
Name | Required | Default | Evaluated | Type | Description |
---|---|---|---|---|---|
format | false | false | String | 日期格式 | |
id | false | true | String | 与普通html的id一样 | |
name | true | true | String | 日期的值 | |
nice | false | false | true | Boolean | 是否打印出更nicely的格式 |
例子: <s:datename="person.birthday"format="dd/MM/yyyy"/> <s:datename="person.birthday"format="%{getText('some.i18n.key')}"/> <s:datename="person.birthday"nice="true"/> <s:datename="person.birthday"/> 问题1: <s:datename="model.createDate"format="yyyy-mm-dd"/>老是将日期显示错误,比如数据库里明明是2009-03-30 ,显示就成了2009-30-31。 解决:这位老兄完全的不明白java的日期格式啊。应该多看看API。
字母 | 日期或时间元素 | 表示 | 示例 |
---|---|---|---|
G | Era标志符 | Text | de>ADde> |
y | 年 | Year | de>1996de>;de>96de> |
M | 年中的月份 | Month | de>Julyde>;de>Julde>;de>07de> |
w | 年中的周数 | Number | de>27de> |
W | 月份中的周数 | Number | de>2de> |
D | 年中的天数 | Number | de>189de> |
d | 月份中的天数 | Number | de>10de> |
F | 月份中的星期 | Number | de>2de> |
E | 星期中的天数 | Text | de>Tuesdayde>;de>Tuede> |
a | Am/pm标记 | Text | de>PMde> |
H | 一天中的小时数(0-23) | Number | de>0de> |
k> | 一天中的小时数(1-24) | Number | de>24de> |
K | am/pm中的小时数(0-11) | Number | de>0de> |
h | am/pm中的小时数(1-12) | Number | de>12de> |
m | 小时中的分钟数 | Number | de>30de> |
s | 分钟中的秒数 | Number | de>55de> |
S | 毫秒数 | Number | de>978de> |
z | 时区 | Generaltimezone | de>PacificStandardTimede>;de>PSTde>;de>GMT-08:00de> |
Z | 时区 | RFC822timezone | de>-0800de> |
当然,数据的日期格式又是另外一回事了,有时我也总会将HH24:mm:ss写成数据库的HH24:mi:ss.有时候写的导数可 能也会出现日期格式的问题,因为与数据库的格式不一样而出来导入错误。还在操作数据库的时候可能也会有日期 格式的困扰,如果用oracle的话,如果你写的正确的日期格式,用String也可以的。 Oracle的to_date函数可以将de>CHARde>,de>VARCHAR2de>,de>NCHARde>,orde>NVARCHAR2de>类型数据转换成de>DATEde>数据类型的值.如果不指 定格式,则会用默认的格式。默认的格式包为:de>NLS_TERRITORYde>。 更多的信息应该参考Oracle的文档了。 2。我在date.jsp里有一个form,里面有一项是Date类型的. <s:datename="birthday"label="birthday"></s:date> 然后我用Action验证.为什么总是得不到birthday的值,跟踪发现birthday的值没有传过来,值只是null 解决:这位大哥,不明白标签的分类。这只是一个快速按你要求格式的显示日期的标签。struts2不会帮你转换的, 应该写成textfield,传过去的日期才会自动帮转换。
请问Struts2的s:date标签在action中一定要为date类型吗?
例:privateDatecurrentDate;......如果不是,请问long,String,Integer如何用<s:datename="currentDate"formate=""yyyy-MM-dd"/>输出?
回答:
s:date标签使用时,一定要是Date类型。String型,数值型等其他类型,可以用以下方法:
先在resource文件中定义如下:
format.date_medium={0,date,medium}format.date_ymd={0,date,yyyy/MM/dd}
format.date_time={0,date,yyyy/MM/ddhh:mm}format.number_money={0,number,#,##0}
然后就可以自由的format了:
<s:textname="format.number_money">
<s:paramname="value"value="salesPrice"/>
</s:text>
円
<s:textname="format.date_ymd">
<s:paramname="value"value="salesDate"/>
</s:text>
相关文章推荐
- struts标签<s:date>的使用
- struts标签中<s:iterator>的使用
- JSTL标签之<fmt:formatDate/>使用介绍
- 有关Struts标签<html:cancel>使用的一点提示
- Struts中<s:select></s:select>标签使用介绍
- Struts标签<bean:write><logic:iterate></logic:equal>的组合使用小例
- Struts标签-使用<s:iterator>标签遍历集合
- 在使用struts标签时,把<s:if>中的test写成了text
- struts学习笔记 [JSTL]<c:forEach>标签的使用
- Struts2.0标签使用之<s:checkboxlist/>
- Struts标签<s:action>的使用详解
- jsp页面中时间格式化显示,<fmt:formatDate> 标签使用
- struts2 <s:date>标签使用
- Struts中<s:token/>标签的使用。相当于一个拦截器<interceptor-ref name="token"/>
- <转载>Spring(22): <context:component-scan>标签的使用说明
- Struts标签-使用<s:iterator>迭代遍历集合中的集合
- struts2标签<s:date>的使用
- struts标签格式化时间<s:date name="neowaveBloodPressure.monitorTime" format="yyyy-MM-dd HH:mm:ss" />
- select、date、iterator、if<s:标签>的使用
- 日期格式化标签<fmt:formatDate>&<fmt:setTimeZone>时区标签的使用demo