1. 程式人生 > >8.引數繫結-自定義型別(傳智播客)

8.引數繫結-自定義型別(傳智播客)

需求:自定義日期型別引數繫結

private Date itemCreateDate;

如果controller形參pojo物件的屬性中有日期型別,需要自定義引數繫結。
將請求日期資料串轉換成日期型別,要轉換的日期型別和pojo中日期屬性的型別保持一致。所以自定義引數繫結將日期串轉成java.util.Date型別。需要向處理器介面卡中注入自定義的引數繫結元件。
1.自定義日期型別繫結

public class DateConverter implements Converter<String,Date> {
    public Date convert(String arg0) {
        //  yyyy-MM-dd
        SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
        try {
            return sd.parse(arg0);
        } catch (ParseException e) {
            throw new IllegalAccessError("日期轉換出錯!!");
        }
    }
}

2.在springmvc.xml檔案中新增配置

 <mvc:annotation-driven conversion-service="conversionService" validator="validator">
 </mvc:annotation-driven>

<bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
   <property name="converters">
       <list>
           <bean class="com.steven.ssm.utils.converter.DateConverter"/>
       </list>
   </property>
</bean>