@NotBlank、@NotNull、@NotEmpty、@NonNull四者之间的区别

@NotBlank、@NotNull、@NotEmpty、@NonNull四者之间的区别

Scroll Down

1.@NotNull:用在基本类型上,不能为null,但可以为空字符串

2.@NotEmpty:用在集合类上,不能为null,并且长度必须大于0

3.@NotBlank:只能作用在String上,不能为null,而且调用trim()后,长度必须大于0

4.@NonNull:在方法或构造函数的参数上使用,生成一个空值检查语句

除了@NotNull,还有其他类似的注解,都是在类字段上使用

  • @Null: 被注释的元素必须为null

  • @NotNull: 被注释的元素不能为null,可以为空字符串

  • @AssertTrue: 被注释的元素必须为true

  • @AssertFalse: 被注释的元素必须为false

  • @Min(value): 被注释的元素必须是一个数字,其值必须大于等于指定的最小值

  • @Max(value): 被注释的元素必须是一个数字,其值必须小于等于指定的最大值

  • @DecimalMin(value): 被注释的元素必须是一个数字,其值必须大于等于指定的最小值

  • @DecimalMax(value): 被注释的元素必须是一个数字,其值必须小于等于指定的最大值

  • @Size(max,min): 被注释的元素的大小必须在指定的范围内。

  • @Digits(integer,fraction): 被注释的元素必须是一个数字,其值必须在可接受的范围内

  • @Past: 被注释的元素必须是一个过去的日期

  • @Future: 被注释的元素必须是一个将来的日期

  • @Pattern(value): 被注释的元素必须符合指定的正则表达式。

  • @Email: 被注释的元素必须是电子邮件地址

  • @Length: 被注释的字符串的大小必须在指定的范围内

  • @Range: 被注释的元素必须在合适的范围内

  • @NotEmpty:用在集合类上,不能为null,并且长度必须大于0

  • @NotBlank:只能作用在String上,不能为null,而且调用trim()后,长度必须大于0