Struts2的<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

4、参数

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的格式

例子:

国际化文件的使用

name="person.birthday" format="dd/MM/yyyy" />
   name="person.birthday" format="%{getText('some.i18n.key')}" />
   name="person.birthday" nice="true" />
   name="person.birthday" />

日期格式API

 

字母

日期或时间元素

表示

示例

G

Era 标志符

Text

AD

y

Year

1996; 96

M

年中的月份

Month

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>


如果用oracle的话,如果你写的正确的日期格式,用String也可以的。Oracle的to_date函数可以将CHAR、VARCHAR2、 NCHAR、NVARCHAR2类型数据转换成DATE数据类型的值. 如果不指定格式,则会用默认的格式。默认的格式包为:NLS_TERRITORY。更多的信息应该参考Oracle的文档了。

注意:s:date标签使用时,显示的数据一定要是Date类型。

posted @ 2015-09-07 15:36  songjinduo  阅读(1973)  评论(0编辑  收藏  举报