开发中常见的@NotNull,@NotBlank,@NotEmpty注解的区别

x33g5p2x  于2022-04-02 转载在 其他  
字(1.0k)|赞(0)|评价(0)|浏览(230)

@NotEmpty,@NotNull和@NotBlank的区别

  1. @NotEmpty :不能为null,且Size>0
  2. @NotNull:不能为null,但可以为empty,没有Size的约束
  3. @NotBlank:只用于String,不能为null且trim()之后size>0

org.apache.commons.lang.StringUtils类提供了String的常用操作,最为常用的判空有如下两种isEmpty(String str)和isBlank(String str)。

StringUtils.isEmpty(String str) 判断某字符串是否为空,为空的标准是 str==null 或 str.length()==0

System.out.println(StringUtils.isEmpty(null));        //true
System.out.println(StringUtils.isEmpty(""));          //true
System.out.println(StringUtils.isEmpty("   "));       //false
System.out.println(StringUtils.isEmpty("dd"));        //false

StringUtils.isNotEmpty(String str) 等价于 !isEmpty(String str)

StringUtils.isBlank(String str) 判断某字符串是否为空或长度为0或由空白符(whitespace) 构成

System.out.println(StringUtils.isBlank(null));        //true
System.out.println(StringUtils.isBlank(""));          //true
System.out.println(StringUtils.isBlank("   "));       //true
System.out.println(StringUtils.isBlank("dd"));        //false

StringUtils.isBlank(String str) 等价于 !isBlank(String str)

相关文章