注解名称 | 作用域 | 注解作用 |
---|---|---|
@Null | 任意类型 | 验证注解的元素是否为null |
@NotNull | 任意类型 | 属性不能为空 |
@NotEmpty | CharSequence子类型、Collection、Map、数组 | 验证注解的元素值不为null且不为空,且size大于0 |
@NotBlank | charSequence子类型 | 验证注解的元素值不能为空,只应用于字符串,比较时会去除字符串首位空格 |
@Min(value=值) | BigDecimal,BigInteger,byte,short,int,long等任何Number或CharSequence(存储的是数字)子类型 | 验证注解的元素值大于等于@Min指定的value值 |
@Max(value=值) | 同@Min | 验证注解的元素值小于等于@Max指定的value |
@DecimalMin(value=值) | 同@Min | 验证注解的元素值大于等于@DecimalMin指定的value值 |
@DecimalMax(value=值 | 同@Min | 验证注解的元素值小于大于@DecimalMax指定的value值 |
@Digits(integer=整数位数,fracction=小数位数) | 同@Min | 验证注解的元素值的整数位数和小数位数上限 |
@Size(min=,max=) | 字符串,collection,Map,数组等 | 验证注解的元素值是否在min和max(包含)指定区间之内,如字符长度,集合大小 |
@Past | java.util.Date,java.util.Calendar,Joda Time等类库的日期类型 | 验证注解的元素值(日期之前)比当前时间早 |
@Future | 同@Past | 验证注解的元素值(日期类型)比当前时间晚 |
@Length(min=下限,max=上限) | charSequence子类型 | 验证注解的元素长度在min和max区间内 |
@Range(min=下限,max=上限) | BigDecimal,BigInteger,CharSequence, byte, short, int, long等原子类型和包装类型 | 验证注解的元素值在最小值和最大值之间 |
@Email(regexp=正则表达式,flag=标志的模式) | CharSequence子类型(如String) | 验证注解的元素值是Email,也可以通过regexp和flag指定自定义的email格式 |
@Pattern(regexp=正则表达式,flag=标志的模式) | String,任何CharSequence的子类型 | 验证注解的元素值与指定的正则表达式匹配 |
@Valid | 任何非原子类型 | 指定递归验证关联的对象;如用户对象中有个地址对象属性,如果想在验证用户对象时一起验证地址对象的话,在地址对象上加@Valid注解即可级联验证 |
网友评论