解決的問題: 解決參數綁定中需要将目前傳來的String類型轉為其他類型。
常用的類型轉換:将String類型轉為Date類型的類型轉換器。
1.前台傳到Controller中的參數隻能進行一些簡單的自動類型轉換,但不能解決将Date類型
顯而易見,其中的生日為Date類型,但在點選儲存發送給請求後,請求參數中為String類型,而且Controller層中參數清單中得到的也是String類型。
因為String類型不能自動轉為Date類型,是以需要類型轉換器。
解決步驟:
1.建立自定義類型轉換器: 實作 Converter<String, Date> 接口。
public class StrConverDate implements Converter<String,Date> {
@Override
public Date convert(String s) {
//自定義 日期格式為 yyyy-MM-dd HH:mm 對應生日的日期格式。
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm");
Date parse=null;
try {
//将字元串解析為Date類型
parse= format.parse(s);
} catch (ParseException e) {
e.printStackTrace();
}
return parse;
}
}
2.在springmvc.xml配置檔案中配置類型轉換器
<!--配置 類型轉換器-->
<bean id="conversionServiceFactoryBean" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
<property name="converters">
<list>
<bean class="com.conver.StrConverDate"></bean> //自己建立的類型轉換器的所在包
</list>
</property>
</bean>
3.此時類型轉換器建立和配置完成,不需要使用,即可實作String類型轉為Date類型