notempty注解属于哪个依赖_@NotEmpty、@NotNull、@NotBlank注解解析

源码解析

@NotEmpty根据JDK源码注释说明,该注解只能应用于char可读序列(可简单理解为String对象),colleaction,map,array上,因为该注解要求的是对象不为null且size>0,所以只有上述对象是拥有size属性的,而Integer,Long等基础对象包装类没有该属性

/**

* The annotated element must not be {@code null} nor empty. Supported types are:

*

*

{@code CharSequence} (length of character sequence is evaluated) char值得可读序列,CharSequence的实现类有String, StringBuffer, StringBuilder, CharBuffer

*

{@code Collection} (collection size is evaluated) 集合类

*

{@code Map} (map size is evaluated) map散列表

*

Array (array length is evaluated) 数组

*

*/

@NotNull,表示不能为null,但可以为empty,与@NotEmpty注解相比是少了size属性,所以"Accepts any type"可以接受任何类型对象

/**

* The annotated element must not be {@code null}.

* Accepts any type.

*/

@NotBlank,"Accepts {@code CharSequence}"表明只应用于char值可读序列,则可以简单理解为只用于String,且不能为null,"non-whitespace"表示不能是空白字符,所以校验字符串是调用trim()方法之后的字符串长度大于0

/**

* The annotated element must not be {@code null} and must contain at least one

* non-whitespace character. Accepts {@code CharSequence}.

*/

Spring 中@NotNull, @NotEmpty和@NotBlank之间的区别是什么?

简述三者区别 @NotNull://CharSequence, Collection, Map 和 Array 对象不能是 null, 但可以是空集(size = 0). @NotEmpty://Ch ...

spring boot -表单校验步骤 +@NotEmpty,@NotNull和@NotBlank的区别

1.实体类属性上添加注解规则 如 public class User { @NotBlank private Integer id ; 2.在方法中添加注解@Valid和一个校验结果参数(Bindin ...

@NotNull, @NotEmpty和@NotBlank之间的区别是什么?

首先是简要描述: [java] view plain copy@NotNull://CharSequence, Collection, Map 和 Array 对象不能是 null, 但可以是空集(s ...

@NotNull和@NotEmpty和@NotBlank区别

1.@NotNull:不能为null,但可以为empty (""," "," ") 2.@NotEmpty:不能为null,而且长度必须大于 ...

@NotNull、@NotEmpty、@NotBlank的区别

Spring中@NotNull.@NotEmpty.@NotBlank的区别@NotNull:用于基本数据类型@NotEmpty:用于集合类@NotBlank:用于String上面

Hibernate Validator验证框架中@NotEmpty、@NotBlank、@NotNull 的区别

Hibernate Validator验证框架中@NotEmpty.@NotBlank.@NotNull的主要使用情况 @NotEmpty  用在集合类上面 @NotBlank   用在String上 ...

@NotNull,@NotEmpty,@NotBlank区别

示例结果: // null String name = null; @NotNull: false @NotEmpty: false @NotBlank: false // 空字符串 String n ...

@NotBlank注解地正确使用

@NotNull:不能为null,但可以为empty @NotEmpty:不能为null,而且长度必须大于0@NotBlank:只能作用在String上,不能为null,而且调用trim()后,长度必 ...

Spring 缓存注解解析过程

Spring 缓存注解解析过程 通过 SpringCacheAnnotationParser 的 parseCacheAnnotations 方法解析指定方法或类上的缓存注解, @Cacheable ...

随机推荐

DELL PowerEdge 2950更换告警硬盘

硬盘为SAS300G15K,四块,3#告警,打算还掉,在R900上找到一块对应的硬盘直接换下. 进入控制台后发现硬盘阵列里还是只有三块硬盘,物理磁盘倒是有四块,新插上的一块状态为“外部”,其他状态是“ ...

android layout布局属性

参考:http://blog.csdn.net/msmile_my/article/details/9018775 第一类:属性值 true或者 false           android:lay ...

微软专家推荐11个Chrome 插件

Web开发人员,需要长时间使用浏览器,尽管Windows10 Edge浏览器启动非常快速,且支持110多种设备,Edge支持基于JS 扩展,但也删除了很多旧功能像Active-X等插件.多数情况下,插 ...

2016年11月6日--form表单验证和事件、正则表达式

1.表单验证

(1).非空验证(去空格) (2).对比验证(跟一个值对比) (3).范围验证(根据一个范围进行判断) (4).固定格式验证:电话号码, ...

23.allegro中钻孔[原创]

1.钻孔: NC Parameters,NC Drill, Dill Legend, NC Route ----------------------- ------ ----- ------- --- ...

Delphi实现HTMLWebBrowser实现HTML界面

HTML的界面有以下特点:图文混排,格式灵活,可以包含Flash.声音和视频等,实现图文声像的多媒体界面,而且易于建立和维护.另外,HTML的显示环境一般机器上都具备,通常不需要安装额外的软件.当然, ...

复制virtualenv环境到其他服务器环境配置的方法

要在n多服务器端部署python的应用,虽然python本身是跨平台的,当时好多第三方的扩展却不一定都能做到各个版本兼容,即便是都是linux,在redhat系列和ubuntu系列之间来回导也是个很让 ...

python+OpenCV 特征点检测

1.Harris角点检测 Harris角点检测算法是一个极为简单的角点检测算法,该算法在1988年就被发明了,算法的主要思想是如果像素周围显示存在多于一个方向的边,我们认为该点为兴趣点.基本原理是根据 ...

关于 HTTP

HTTP是一种能够获取如 HTML 这样的网络资源的 protocol(通讯协议).它是在 Web 上进行数据交换的基础,是一种 client-server 协议,也就是说,请求通常是由像浏览器这样的 ...

【Linux】函数与参数

函数的定义 函数的定义包括function命令.函数名.开/闭括号包括以及包含在一对花括号中的函数体. (1) 函数定义 function fname() { Statements; } 或者 fna ...

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值