67,513
社区成员
发帖
与我相关
我的任务
分享
public class DateConverter implements Converter<String, Date> {
/** date format 格式*/
private static final String[] PATTERNS = {"yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd", "HH:mm:ss"};
@Override
public Date convert(String source) {
if(!StringUtil.isNvl(source)) {
try {
return DateUtils.parseDateStrictly(source, PATTERNS);
} catch (ParseException e) {
//异常时参数绑定失败
}
}
return null;
}
}
mvc配置:
<!-- request请求参数绑定类型定义-->
<bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
<property name="converters">
<set>
<!-- 此处可以定义多种转换类型 -->
<bean class="com.xxx.xxx.converter.DateConverter" />
</set>
</property>
</bean>
<mvc:annotation-driven conversion-service="conversionService" />
这样在控制层用Date 接收数据的时候, springmvc会按照convert里面的返回值设置绑定结果。
这样比使用@InitBinder方便, 不用在每个Controller都写。