1.@NotNull:
不能为null,但可以为empty(""," “,” ") ,一般用在基本数据类型的非空校验上,而且被其标注的字段可以使用 @size/@Max/@Min对字段数值进行大小的控制 =====对象使用
2.@NotEmpty:
不能为null,而且长度必须大于0(" “,” "),一般用在集合类上面 ======集合使用
3.@NotBlank:
这玩意只能作用在接收的String类型上,不能为null,而且调用trim()后,长度必须大于0======String 字符串使用
实际开发中,这三个东西一定要分的清楚,乱用或者没注意容易吃亏。一次开发中就是由于开发人员的疏忽,一个BigDecimal的字段使用成了@NotBlank(还是@NotEmpty来着,记不清了,不重要_),然后导致服务器报错,后来将字段校验标签改成@NotNull后问题得到解决。