参数校验注解

注解名称 作用域 注解作用
@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注解即可级联验证
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。