在页面和控制器传输的过程中往往会有一些自定义类型 springmvc不能帮我们满足,虽然已经满足大部分类型了。
比如字符串的日期类型精确点时间分秒从页面传输到控制器里就会被强制改变那么我们就会用到自定义的类型转换了。
<!-- 开启注解配置 扫描com.samrtian.action包下的所有类 红色部分就是自定义的一个bean-->
<mvc:annotation-driven conversion-service="conversionService" validator="validator"/>
<context:component-scan base-package="com.samrtian.action"/>
<!-- 自定义类型转换器 -->
<bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
<property name="converters">
<list>
<!-- 自定义的转换器 -->
<bean class="com.samrtian.action.CustomDateConverter"/>
</list>
</property>
</bean>
自定义的一个类型转换类
public class CustomDateConverter implements Converter<String, Date>{
@Override
public Date convert(String source) {
// TODO Auto-generated method stub
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:MM:SS");
try {
// 返回日期
return formatter.parse(source);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 不成功返回空
return null;
}
}