我试图了解之间的区别:
void addError(ObjectError error)(来自
org.springframework.validation.Errors)
void rejectValue(String field,
errorCode)(来自org.springframework.validation.BindingResult)
我确实读过Spring javadocs,但无法理解两者之间的区别。
谁能提供解释或代码示例?
最佳答案
rejectValue
只是封装对提供ObjectError
或FieldError
实例的addError()的调用。
根据javadoc,addError()
仅支持ObjectError
和FieldError
,因此与创建自定义ObjectErrors无关。
无效org.springframework.validation.BindingResult.addError(ObjectError错误)
将自定义ObjectError或FieldError添加到错误列表。
旨在供诸如BindingErrorProcessor之类的合作策略使用。
因此addError()
更适合框架开发人员,并且rejectValue()
是可行的方法。