您的位置:首页 > 其它

数据绑定和自定义转化类型DataBinder/ConversionService

2016-10-22 10:52 295 查看

数据绑定和自定义转化类型DataBinder/ConversionService

-1. Spring MVC 主框架将 ServletRequest 对象及目标方

法的入参实例传递给 WebDataBinderFactory 实例,以创

建 DataBinder 实例对象

• 2. DataBinder 调用装配在 Spring MVC 上下文中的

ConversionService 组件进行数据类型转换、数据格式

化工作。将 Servlet 中的请求信息填充到入参对象中

• 3. 调用 Validator 组件对已经绑定了请求消息的入参对象

进行数据合法性校验,并最终生成数据绑定结果

BindingData 对象

• 4. Spring MVC 抽取 BindingResult 中的入参对象和校验

错误对象,将它们赋给处理方法的响应入参

自定义转化器

“conversionService”/> 会将自定义的 ConversionService 注册到Spring MVC 的上下文中

第一种配置



第二种配置



转化器组件示例 实现Converter接口

@Component
public class EmployeeConverter implements Converter<String, Employee> {

@Override
public Employee convert(String source) {
if(source != null){
String [] vals = source.split("-");
//GG-gg@atguigu.com-0-105
if(vals != null && vals.length == 4){
String lastName = vals[0];
String email = vals[1];
Integer gender = Integer.parseInt(vals[2]);
Department department = new Department();
department.setId(Integer.parseInt(vals[3]));

Employee employee = new Employee(null, lastName, email, gender, department);
System.out.println(source + "--convert--" + employee);
return employee;
}
}
return null;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  DataBinder Conversion