校验模式
1、校验模式分类
(1)普通模式:会校验完所有的属性,然后返回所有的验证失败信息
(2)快速失败返回模式:只要有一个验证失败,则返回
2、校验注解
@Null 被注释的元素必须为null
@NotNull 被注释的元素不能为null
@NotEmpty 验证注解元素值不为null且不为空(字符串长度不为0、集合大小不为0)
@NotBlank 验证注解的元素值不为空(不为null、去除首位空格后长度为0)
@AssertTrue 被注释的元素必须为true
@AssertFalse 被注释的元素必须为false
@Min(value=x) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@Max(value=x) 被注释的元素必须是一个数字,其值必须小于等于指定的最大值
@DecimalMin(value=x) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@DecimalMax(value=x) 被注释的元素必须是一个数字,其值必须小于等于指定的最大值
@Email 被注释的元素必须是电子邮件地址
@Past 被注释的元素必须是一个过去的日期
@Future 被注释的元素必须是一个将来的日期
@Digits(integer=整数位数, fraction=小数位数) 被注释的元素必须是一个数字,验证注解的元素值的整数位数和小数位数上限
@Pattern(regex=正则表达式, flag=) 被注释的元素必须符合指定的正则表达式。
@Size(min=最小值,max=最大值) 被注释的元素的大小必须在指定的范围内。
@Length(min=最小值, max=最大值) 被注释的字符串的大小必须在指定的范围
@Range(min=最小值, max=最大值) 被注释的元素必须在合适的范围内
延伸:
@NotEmpty、@NotNull、@NotBlank区别
@NotEmpty :不能为null,且Size>0,@NotEmpty注解的String、Collection、Map、数组是不能为null或长度为0
@NotNull:不能为null,但可以为empty,没有Size的约束,带注释的元素不能为null,接受任何类型
@NotBlank:只用于String,不能为null且trim()之后size>0,纯空格的String也是不符合规则的,此注解只能用于验证String类型