关于springMVC的类型转换问题(Date)
第一种方法 自定义类型转换
1.springMVC 自定义类型转换要实现Converter<String,Date>接口
public class String2Date implements Converter<String,Date> {
@Override
public Date convert(String source) {
if(StringUtils.isEmpty(source)){
throw new RuntimeException("请输入时间字符串");
}
try {
return new SimpleDateFormat("yyyy-MM-dd HH:mm").parse(source);
} catch (ParseException e) {
throw new RuntimeException("字符串不合法,转换失败");
}
}
}
其中Converter的两个泛型,第一个作为形参 ,第二个作为返回值类型
2. 修改spring-mvc的配置文件
<!--注册类型转化器-->
<bean id="conversionService" class="org.springframework.context.support.ConversionServiceFactoryBean">
<!--注入自定义的类型转换器-->
<property name="converters" >
<set>
<bean class="cn.sun.utils.String2Date"></bean>
</set>
</property>
</bean>
<!--注册自定义的类型转换器,使其生效-->
<mvc:annotation-driven conversion-service="conversionService"/>
第二种方法:在实体类中Date属性加 @DateTimeFormat(pattern=“yyyy-MM-dd HH:mm”)
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm")
private Date departureTime; // 出发时间