当前位置 : 主页 > 编程语言 > java >

@Validated和@Valid三种异常捕获处理方式

来源:互联网 收集:自由互联 发布时间:2021-11-19
目录 @Validated和@Valid异常捕获 异常共三种 @Valid和@Validated区别 注解位置 @Validated和@Valid异常捕获 异常共三种 BindException :表单提交有效,对于以json格式提交将会失效 MethodArgumentNotValid
目录
  • @Validated和@Valid异常捕获
    • 异常共三种
  • @Valid和@Validated区别
    • 注解位置

@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)上

以上为个人经验,希望能给大家一个参考,也希望大家多多支持自由互联。

网友评论