@NotNull,@NotEmpty,@NotBlank区别

 示例结果:

// null
String name = null;
@NotNull: false
@NotEmpty: false
@NotBlank: false
 
// 空字符串
String name = "";
@NotNull: true
@NotEmpty: false
@NotBlank: false
 
// 空格
String name = " ";
@NotNull: true
@NotEmpty: true
@NotBlank: false
 
// 字符串
String name = "liudehua";
@NotNull: true
@NotEmpty: true
@NotBlank: true

 简述下三者区别,合理使用:

@NotNull: CharSequence, Collection, Map 和 Array不能是null, 但可以是空集(size = 0)。 

@NotEmpty:CharSequence, Collection, Map 和 Array不能是null, 且需要size > 0。 

@NotBlank: String不能是null,且去除两端空白字符后的长度(trimmed length)大于0。 

 源码:

  • @NotNull:

不能为null,但可以为empty, 没有Size的约束

  • @NotEmpty:

不能为null,且Size > 0

  • @NotBlank:

 只用于String,不能为null且trim()之后size > 0

原文地址:https://www.cnblogs.com/lwcode6/p/11910755.html