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

@NotEmpty、@NotNull、@NotBlank 的區別

ray div null white 很好 bsp ann tin 方法

@NotEmpty 用在集合上面(不能註釋枚舉)

@NotBlank用在String上面

@NotNull用在基本數據類型上面

1. @NotEmpty

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

加了@NotEmpty的String類,Collection、Map、數組,是不能為null或者長度為0的(String、Collection、Map

的isEmpth()方法)

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.

“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.

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

問題來了,如何對枚舉類做校驗呢?

@NotEmpty、@NotNull、@NotBlank 的區別