在做基于SSM框架项目的时候从前端传来的日期格式与实体中的日期格式转换失败,因此造成报此种类型的错误,我们只需要在全局类型转换器即可解决这种类型的错误。
package com.ujiuye.common;
import org.springframework.core.convert.converter.Converter;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateTimeConverter implements Converter<String,Date>{
@Override
public Date convert(String source) {
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
try {
Date date = sdf.parse(source);
return date;
} catch (Exception e) {
System.out.println(e.getMessage());
return null;
}
}
}
并且在springmvc.xml中配置相应的环境,如下:
<bean id="converter" class="com.ujiuye.common.DateTimeConverter"></bean>
<bean id="formattingConversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
<property name="converters">
<set>
<ref bean="converter"></ref>
</set>
</property>
</bean>
<!--处理静态资源文件的标签-->
<mvc:default-servlet-handler/>
<!-- <mvc:annotation-driven></mvc:annotation-driven>-->
<mvc:annotation-driven conversion-service="formattingConversionService"/>
配置了以上的环境,从前端传到后端的日期会自动的进行格式的转换。