SpringMVC中的数据类型转换

1.首先来一张图,以及一段文字说明(PS:以下内容摘抄至“Spring+MyBatis企业应用实战”一书中的内容)

SpringMVC中的数据类型转换

SpringMVC框架将ServletRequest对象及处理方法的参数对象实例传递给DataBinder,DataBinder调用装配在Spring Web上下文中的ConversionService组件进行类型转换、数据格式化工作,并将ServletRequest中的消息填充到参数对象中。然后再调用Validator组件对已经绑定了请求消息数据的参数对象进行数据合法性校验,并最终生成数据绑定结果BindingResult对象。BindingResult包含已完成数据绑定的参数对象,还包含相应的校验错误对象,SpringMVC抽取BindingResult中的参数对象,将它们赋给处理方法的相应参数。


2.以下通过实例介绍String类型到DATE类型的转换(前台页面提交的String类型的日期数据,然后交由SpringMVC将其转换成date类型)。

3.编写数据转换的类

//实现Converter<S,T>接口
public class StringToDateConverter implements Converter<String, Date>{


//日期类型模板:如yyyy-mm-dd
private String datePattern;

public void setDatePattern(String datePattern) {
this.datePattern = datePattern;
}

//Converter<S,T>接口转换方法
public Date convert(String date) {
SimpleDateFormat dateFormat = new SimpleDateFormat(this.datePattern);

try {
//将日期字符串转换成Date类型返回
return dateFormat.parse(date);
} catch (ParseException e) {
e.printStackTrace();
System.out.println("日期转换失败!");
return null;
}
}


}

4.在spring的配置文件中进行类型转换器的配置,即可自动完成转换工作

SpringMVC中的数据类型转换