作者:ssslinppp
1. 摘要
本文主要講解Spring mvc數據格式化的具體步驟;
並講解前台日期格式如何轉換為java對象;
在之前的文章《
【Spring學習筆記-MVC-8】SpringMVC之類型轉換Converter
》(對應鏈接:
http://www.cnblogs.com/ssslinppp/p/4598102.html )
中講解了Spring MVC的
類型轉換
,在此回顧下。
數據格式化,從本質上講屬於數據轉換的范疇。Spring就是基於數據轉換框架植入“格式化”功能的。
在數據轉換時我們進行了如下配置:

我們使用的是ConversionServiceFactoryBean,而進行數據格式化時,只是將ConversionServiceFactoryBean改為FormattingConversionServiceFactoryBean即可,其他沒有變化,如下是數據格式化的配置:

關於
FormattingConversionServiceFactoryBean與
ConversionServiceFactoryBean的比較:
- ConversionService:只有數據轉換功能;
- ConversionServiceFactoryBean:與ConversionService對應;
- FormattingConversionService:具有數據轉換和數據格式化功能;
- FormattingConversionServiceFactoryBean:與FormattingConversionService對應;可以注冊自定義的轉換器,又可以注冊自定義的注解驅動器邏輯。
<mvc:annotation-driven/>標簽內部默認創建的conversionService實例就是一個FormattingConversionServiceFactoryBean;
裝配完FormattingConversionServiceFactoryBean后,Spring MVC對處理方法的入參綁定就支持注解驅動的功能了。
2. 具體實現
步驟1:配置FormattingConversionServiceFactoryBean

<mvc:annotation-driven conversion-service="conversionService"/>
<bean id="conversionService"
class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
<property name="converters">
<list>
<!-- <bean class="com.ll.model.StringToPersonConverter" /> -->
</list>
</property>
</bean>
步驟2:使用@DateTimeFormat和@NumberFormat注解對象屬性

步驟3:控制層

步驟4:前台請求



3. 簡單介紹@DateTimeFormat與@NumberFormat


附件列表