@NotNull,@NotEmpty,@NotBlank区别
Posted lwcode6
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了@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
以上是关于@NotNull,@NotEmpty,@NotBlank区别的主要内容,如果未能解决你的问题,请参考以下文章
@notnull @notempty @notblank区别
@NotNull,@NotBlank和 @NotEmpty使用
@NotEmpty@NotNull@NotBlank 的区别
@NotEmpty@NotNull 和 @NotBlank 的区别
在 Hibernate Validator 4.1+ 中,@NotNull、@NotEmpty 和 @NotBlank 有啥区别?