@NotEmpty、@NotBlank、@NotNull的區別


@NotEmpty 用在集合類上面 

@NotBlank 用在String上面 

@NotNull 用在基本類型上

 

 



只有簡單的結果,但是再更具體一點的內容就搜不到了,所以去看了看源碼,發現了如下的注釋:

 

1. @NotEmpty

/** 
* Asserts that the annotated string, collection, map or array is not {@code null} or empty. 

* @author Emmanuel Bernard 
* @author Hardy Ferentschik 
*/

也就是說,加了@NotEmpty的String類、Collection、Map、數組,是不能為null或者長度為0的(String、Collection、Map的isEmpty()方法)。

2. @NotBlank

/** 
* Validate that the annotated string is not {@code null} or empty. 
* The difference to {@code NotEmpty} is that trailing whitespaces are getting ignored. 

* @author Hardy Ferentschik 
*/

“The difference to {@code NotEmpty} is that trailing whitespaces are getting ignored.” –> 和{@code NotEmpty}不同的是,尾部空格被忽略,也就是說,純空格的String也是不符合規則的。所以才會說@NotBlank用於String。

3. @NotNull

/** 
* The annotated element must not be {@code null}. 
* Accepts any type. 

* @author Emmanuel Bernard 
*/

這個就很好理解了,不能為null。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM