注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

魑魅魍魉福'HOME

见证成长

 
 
 

日志

 
 

【引用】struts 2标签 <s:date>  

2011-10-24 15:28:22|  分类: Web开发 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
本文转载自Blank_Y《struts 2标签 <s:date>》
struts 标签 :<s:date/>
作用:用来格式化显示日期的格式。

它可以用一种你指定的格式来显示(如:“yyyy-MM-dd”),可以生成通俗易懂的注释(如:in 2 hours,14 minutes),或者用预先定义的一个格式来显示(如在properties配置文件中配置'struts.date.format').如果没有找到这个struts.date.format,则会找默认的DateFormat.MEDIUM来格式化你的日期对象。当然如果在值栈中没有找你对应的日期对象,则会返回空格。

可配置的标签属性有:
  • name
  • nice
  • format

下面这些功能的使用决定于nice属性与format属性。

1。nice属性为true

i18n key default
struts.date.format.past {0} ago
struts.date.format.future in {0}
struts.date.format.seconds an instant
struts.date.format.minutes {0,choice,1#one minute|1<{0} minutes}
struts.date.format.hours {0,choice,1#one hour|1<{0} hours}{1,choice,0#|1#, one minute|1<, {1} minutes}
struts.date.format.days {0,choice,1#one day|1<{0} days}{1,choice,0#|1#, one hour|1<, {1} hours}
struts.date.format.years {0,choice,1#one year|1<{0} years}{1,choice,0#|1#, one day|1<, {1} days}


2.nice属性为false,format属性指定的格式 如:dd/MM/yyyy

在这种情况下,format属性将被使用。

3。nice属性为false,format属性没有指定。

i18n key default
struts.date.format if one is not found DateFormat.MEDIUM format will be used

参数

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:date name="person.birthday" format="dd/MM/yyyy" />

<s:date name="person.birthday" format="%{getText('some.i18n.key')}" />
<s:date name="person.birthday" nice="true" />
<s:date name="person.birthday" />

问题1:
<s:date name="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 时区 General time zone de>Pacific Standard Timede>; de>PSTde>; de>GMT-08:00de>
Z 时区 RFC 822 time zone de>-0800de>

当然,数据的日期格式又是另外一回事了,有时我也总会将HH24:mm:ss写成数据库的HH24:mi:ss.有时候写的导数可
能也会出现日期格式的问题,因为与数据库的格式不一样而出来导入错误。还在操作数据库的时候可能也会有日期
格式的困扰,如果用oracle的话,如果你写的正确的日期格式,用String也可以的。

Oracle的to_date函数可以将de>CHARde>, de>VARCHAR2de>, de>NCHARde>, or de>NVARCHAR2de> 类型数据转换成de>DATEde>数据类型的值. 如果不指
定格式,则会用默认的格式。默认的格式包为:de>NLS_TERRITORYde> 。
更多的信息应该参考Oracle的文档了。

2。我在date.jsp里有一个form,里面有一项是Date类型的.
<s:date name="birthday" label="birthday"> </s:date>
然后我用Action验证.为什么总是得不到birthday的值,跟踪发现birthday的值没有传过来,值只是null

解决:这位大哥,不明白标签的分类。这只是一个快速按你要求格式的显示日期的标签。struts2不会帮你转换的,
应该写成textfield,传过去的日期才会自动帮转换。
  评论这张
 
阅读(478)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018