使用JSR303进行校验

4、JSR303

  • 1)、给Bean添加校验注解:javax.validation.constraints,并定义自己的message提示
  • 2)、开启校验功能@Valid
  • 效果:校验错误以后会有默认的响应;
  • 3)、给校验的bean后紧跟一个BindingResult,就可以获取到校验的结果
  • 4)、分组校验(多场景的复杂校验)
  • a)、 @NotBlank(message = "品牌名必须提交",groups = {AddGroup.class,UpdateGroup.class})
  • 给校验注解标注什么情况需要进行校验
  • b)、@Validated({AddGroup.class})
  • c)、默认没有指定分组的校验注解@NotBlank,在分组校验情况@Validated({AddGroup.class})下不生效,只会在@Validated生效;
  • 5)、自定义校验
  • 1)、编写一个自定义的校验注解
  • 2)、编写一个自定义的校验器 ConstraintValidator
  • 3)、关联自定义的校验器和自定义的校验注解
  • * @Documented
  • * @Constraint(validatedBy = { ListValueConstraintValidator.class【可以指定多个不同的校验器,适配不同类型的校验】 })
  • * @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
  • * @Retention(RUNTIME)
  • * public @interface ListValue {
posted @ 2020-10-08 13:43  jock_javaEE  阅读(513)  评论(0)    收藏  举报