数据绑定和自定义转化类型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接口
@Componentpublic class EmployeeConverter implements Converter<String, Employee> {@Overridepublic Employee convert(String source) {if(source != null){String [] vals = source.split("-");//GG-gg@-0-105if(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;}}