Day24SSM之SpringMVC日期转换***
原创
©著作权归作者所有:来自51CTO博客作者翁老师的教学团队的原创作品,请联系作者获取转载授权,否则将追究法律责任
SpringMVC的参数绑定-日期格式转换
- (1)springMVC默认不支持页面上的日期字符串到后台的Date的转换
- (2) 有两种方式
》第一种使用注解
<input type="date" name="birthday2"/><br/>
public class Person {
private int id;
private String username;
private String password;
private String city;
private Birthday birthday;
@DateTimeFormat(pattern ="yyyy-MM-dd")
private Date birthday2;
注解后面的格式怎么写?看请求发送的真实数据
》第二种自己编写 转换类,配置到springMVC(了解)
编写自定义日期类型转换器实现步骤:
1.编写自定义转换器实现Converter重写方法,进行转换
//1:将页面上提交的日期字符串,转成Date对象
public class DateTimeFormatConvert implements Converter<String, Date> {
public Date convert(String s) {
System.out.println("convert "+s);
//2:转换器
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date = null;
try {
date = sdf.parse(s);//2020-10-14
} catch (ParseException e) {
e.printStackTrace();
}
return date;
}
}
2.springmvc.xml中配置转换工厂,将我们的转换器设置到converters集合中
<bean id="formattingConversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
<property name="converters">
<set>
<bean id="dateTimeFormatConverter" class="com.wzx.util.DateTimeFormatConvert"></bean>
</set>
</property>
</bean>
3.将转换工厂对象挂载到处理器适配器上(挂载到注解驱动)
<mvc:annotation-driven conversion-service="formattingConversionService"/>