@validated @valid常用注解
@Valid 和 @Validated 比较
最后我们来对 @Valid 和 @Validated 两个注解进行总结下:
(1)@Valid 和 @Validated 两者都可以对数据进行校验,待校验字段上打的规则注解(@NotNull, @NotEmpty等)都可以对 @Valid 和 @Validated 生效;
(2)@Valid 进行校验的时候,需要用 BindingResult 来做一个校验结果接收。当校验不通过的时候,如果手动不 return ,则并不会阻止程序的执行;
(3)@Validated 进行校验的时候,当校验不通过的时候,程序会抛出400异常,阻止方法中的代码执行,这时需要再写一个全局校验异常捕获处理类,然后返回校验提示。
(4)总体来说,@Validated 使用起来要比 @Valid 方便一些,它可以帮我们节省一定的代码,并且使得方法看上去更加的简洁。
`@AssertFalse:
所注解的元素必须是Boolean类型,并且值为false
@AssertTrue:
所注解的元素必须是Boolean类型,并且值为true
@DecimalMax:
所注解的元素必须是数字,并且值要小于或等于给定的BigDecimalString值
@DecimalMin:
所注解的元素必须是数字,并且值要大于或等于给定的BigDecimalString值
@Digits:
所注解的元素必须是数字,并且它的值必须有指定的位数
@Email:
所注解的元素要匹配指定的正则表达式
@Max:
所注解的元素必须是数字,并且值要小于或等于给定的值。注意如果@Max所注解的元素是null,则@Max注解
会返回true,所以应该把@Max注解和@NotNull注解结合使用
@Min:
所注解的元素必须是数字,并且值要大于或等于给定的值。注意如果@Min所注解的元素是null,则@Min注解
会返回true,即也会通过校验,所以应该把@Min注解和@NotNull注解结合使用。
@NotBlank:
所注解的元素不能为null且不能为空白,并且必须至少包含一个非空白字符,用于校验CharSequence(含String、StringBuilder和StringBuffer)。只支持字符类型。
@NotEmpty:
所注解的元素不能为null且长度大于0,可以是空白,用于校验CharSequence、数组、Collection和Map
@NotNull:
所注解的元素不能为null,接受任何类型
@Null:
所注解的元素必须为null,接受任何类型
@Pattern:
所注解的元素必须匹配指定的正则表达式。注意如果@Pattern所注解的元素是null,则@Pattern注解会返回
true,即也会通过校验,所以应该把@Pattern注解和@NotNull注解结合使用
@Size:
所注解的元素必须符合指定的大小,该注解可用于数组,CharSequence(含String、StringBuilder和
StringBuffer),Collection和Map。注意如果@Size所注解的元素是null,则@Size注解会返回true,即也
会通过校验,所以应该把@Size注解和@NotNull注解结合使用`
I can feel you forgetting me。。 有一种默契叫做我不理你,你就不理我