1. 程式人生 > >@NotEmpty、@NotNull、@NotBlank的區別

@NotEmpty、@NotNull、@NotBlank的區別

@NotEmpty、@NotNull、@NotBlank的區別 
1 @NotEmpty :不能為null,且Size>0 
2 @NotNull:不能為null,但可以為empty,沒有Size的約束 (一般用在基本資料型別)
3 @NotBlank:只用於String,不能為null且trim()之後size>0

 

@NotBlank註解(只作用在String上)

驗證註釋的String不是null或空的,與@NotEmpty的區別在於,尾部空格被忽略,也就是說,純空格的String也是不符合規則的.

 

@NotNull

一般可以用在基本資料型別上

 

@NotEmpty

帶註解的String,collection,map或陣列不能為null,也不能為空。 
也就是說,有@NotEmpty註解的String、Collection、Map、陣列是不能為null或長度為0

 

下面是錯誤的,這是基礎型別的包裝類、除了以上4種類型都不能使用@NotEmpty

@NotEmpty(message = "id不能為null或空")

pirvate Long id;

 

下面是正確的

@NotNull(message = "id不能為null或空")

private Long id;