spring mvc3.1.0 日期自動轉換

edagarli發表於2014-02-20
最近在學習spring mvc,版本是3.1.0,在測試型別自動轉換的時候,對日期型別轉換總是拋異常,通過度孃的幫助也沒有解決這個問題,大多是教你怎麼寫自定義日期轉換,並注入到controller中的,不是我想要的,後來查spring reference終於搞定. 
在spring reference中第16.14節(16.14 Configuring Spring MVC)中有關於MVC的配置介紹, 
其中有句話 
3. Support for formatting Date, Calendar, Long, and Joda Time fields using the @DateTimeFormat 
annotation, if Joda Time 1.3 or higher is present on the classpath. 

看到這句話之後發現我的classpath中確實沒有這個joda time jar包,去網站下來一個扔到classpath裡,解決了問題. 

心得:不讀書不看報真是不行! 

以下是我對spring mvc自動對String ->java.util.Date 轉換的整理記錄,希望對和我一樣的spring mvc小白有所幫助. 

spring mvc3 支援將表單內容自動轉換成POJO,對於POJO中的java.util.DateL型別的自動轉換需要注意如下幾點: 
1:需要在classpath中有 joda-time-1.3(+).jar 
2:POJO的Date型別屬性上需要加 @DateTimeFormat,格式可以是下邊這樣: 
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") 
@DateTimeFormat(pattern="HH:mm:ss") 
@DateTimeFormat(pattern="yyyy-MM-dd") 
在一個表單中可同時支援這3種型別 

3:在mvc的配置檔案中需要加 <mvc:annotation-driven/>

轉載於http://leyen.iteye.com/blog/1740804

相關文章