@Validated和@Valid异常捕获
异常共三种
BindException
:表单提交有效,对于以json格式提交将会失效MethodArgumentNotValidException
:前段以json格式有效ConstraintViolationException
:参数上加@RequestParam或参数加@NotBlank @NotNull等
@Valid和@Validated区别
@Valid
是使用Hibernate validation的时候使用@Validated
是只用Spring Validator校验机制使用
说明:java的JSR303声明了@Valid这类接口,而Hibernate-validator对其进行了实现
@Validation对@Valid进行了二次封装,在使用上并没有区别,但在分组、注解位置、嵌套验证等功能上有所不同,这里主要就这几种情况进行说明。
注解位置
@Validated
:用在类型、方法和方法参数上。但不能用于成员属性(field)@Valid
:可以用在方法、构造函数、方法参数和成员属性(field)上
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。