Spring Web利用切面统一处理参数校验异常的方法
关于spring web的参数校验,其过程是通过org.springframework.validation.DataBinder
,调用org.springframework.validation.Validator
下的validate(Object target, Errors errors)
方法。该Validator的实例为org.springframework.validation.beanvalidation.SpringValidatorAdapter
。该类内部绑定了javax.validation.Validator
的一个实例,一般为org.hibernate.validator.internal.engine.ValidatorImpl
。最终整个校验结果被存储在org.springframework.validation.BindingResult
的实例中。
Controller中关于bindingResult的用法,官网上有一个入门示例.
其中关于参数校验异常的处理是
if (bindingResult.hasErrors()) {
return "form";
}