@NotNull,@NotBlank和 @NotEmpty使用:
@NotNull 验证对象是否不为null, 无法查检长度为0的字符串
@NotBlank 检查约束 (字符串) 是不是Null还有被Trim的长度是否大于0,只对字符串,且会去掉前后空格.
@NotEmpty 检查(集合)约束元素是否为NULL或者是EMPTY
.
总结:@NotEmpty 用在集合类上面;@NotBlank 用在String上面;@NotNull 用在基本类型上
@Validated和@Valid实现嵌套验证:
@Validated:可以用在类型、方法和方法参数上。但是不能用在成员属性(字段)上
@Valid:可以用在方法、构造函数、方法参数和成员属性(字段)上
嵌套验证:需要验证的实体对象里面包含了另一个也需要进行参数校验的实体
当需要实现嵌套验证时,我们需要在Controller的入参上加上@Validated注解,然后在需要嵌套验证的参数上加上@Valid注解: