STRUTS2中的日期處理

1.Struts2中的日期的格式化:

附:<s:date name="entity.endDate" format="yyyy-MM-dd" />

在struts2中,提供了<s:date.../>標籤,可以很方便地處理日期。有了這個標籤,就可以隨意地以各種方式來格式化日期,如指定日期格式爲「dd/MM/yyyy hh:mm」,或者是自定義可讀性強的日期格式「2 hours 14 minutes」,或者使用在properties文件中預先定義好日期格式。

s:date標籤共有四個屬性,id,name,format,nice;

(1)nice:

    可以設爲true或者false,表示是否漂亮地顯示日期,如果設置爲true,那麼將FORMAT屬性將不會生效,日期將按以下規則顯示:

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}


以上是默認的顯示規則,可以在properties文件中修改。

(2)format:

    當nice="false"時,format屬性將起作用,如:"yyyy-MM-dd hh:mm:ss",其中,y是年(year),M是月(Month),d是日(day),h是小時(hour,12小時制),H也是小時(hour,24小時制),m是分鐘(minute),s是秒(second)。

(3)當format未設置時,將會使用默認的格式DateFormat.MEDIUM format

2.在struts2中使用日期控件:

    在struts2中,提供了日期控件,以方便地選擇日期和時間,這是通過<s:datetimepicker.../>標籤來實現的。該日期控件是通過DOJO來實現的,會在客戶端生成一段JS代碼,所以,要讓該日期控件生效,需要在<head></head>中間加入以下代碼:

   

xml 、jsp代碼
<s:head theme="ajax" />  
    這樣,就可以在頁面中使用<s:datetimepicker>標籤了。如:

   

xml 、jsp代碼
<s:datetimepicker name="todayDate" label="Format (yyyy-MM-dd)" displayFormat="yyyy-MM-dd"/>  
    在頁面中,就會顯示出日期控件,其中displayFormat是要顯示的日期格式。效果如下所示:

 

參考資料:http://struts.apache.org/2.x/docs/datetimepicker.html

附:另一種更好的日期控件包  在 「下載區我的資源中」

在JSP中的使用方法爲:

首先要加入引用時間控件的包:

一、<script language="JavaScript" type="text/javascript" src="${webPath}/common/time/WdatePicker.js"></script>

二、<input type="text" name="entity.dispDate" id="entity.dispDate"  onchange="calculate('m')" value="<s:date name="ecuBorrow.dispDate" format="yyyy-MM-dd" />"  onclick="WdatePicker()" class="timeA" onmouseover="this.className='timeAA'" onmouseout="this.className='timeA'"/>

 相關鏈接爲: http://download.csdn.net/source/2106108

 

本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/haotangyu/archive/2010/03/08/5355785.aspx