Spring MVC表单填空时间
Spring MVC表单填写时间
写一个Spring MVC项目,需要在form表单里面填写日期时间,然后把填写的表单提交到JavaBean对象,再把javaBean对象通过映射添加到数据库里面。但是表单里面填写的是string类型,而bean对象相应字段是Date类型,直接操作就会报错,请问该如何解决?
------解决方案--------------------
方法有很多,我的配置给你参考下
定义转换类, 支持多种日期格式
mvc.xml配置:
------解决方案--------------------
这样啊,你时间属性额外接收,就不要封装到对象里面去了,用String接收,然后处理完毕放入bean里面,然后再插入数据就没问题了
写一个Spring MVC项目,需要在form表单里面填写日期时间,然后把填写的表单提交到JavaBean对象,再把javaBean对象通过映射添加到数据库里面。但是表单里面填写的是string类型,而bean对象相应字段是Date类型,直接操作就会报错,请问该如何解决?
------解决方案--------------------
方法有很多,我的配置给你参考下
定义转换类, 支持多种日期格式
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.xml配置:
<mvc:annotation-driven conversion-service="conversionService" />
<!-- request请求参数绑定类型定义-->
<bean id="conversionService"
class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
<property name="converters">
<set>
<!-- 控制层参数支持Date类型 -->
<bean class="xxx.xxx.DateConverter" />
</set>
</property>
</bean>
------解决方案--------------------
这样啊,你时间属性额外接收,就不要封装到对象里面去了,用String接收,然后处理完毕放入bean里面,然后再插入数据就没问题了