Java参数校验工具validation

Java参数校验工具validation

validation可以做以下事情

  • validation可以抛出统一的参数校验异常,方便定位问题
  • 编程简单,只需要注解就能搞定,不需要编写大量的代码

validation提供以下注解:

img

注解属性值类型功能
@AssertFalseBoolean、boolean被注释的元素必须为false
@AssertTrueBoolean、boolean被注释的元素必须为true
@DecimalMax(value)BigDecimal、BigInteger、String、byte、short、int、long及对应类型的封装类被注释的元素必须是一个数字,其值必须大于等于指定的最大值
@DecimalMin(value)BigDecimal、BigInteger、String、byte、short、int、long及对应类型的封装类被注释的元素必须是一个数字,其值必须小于等于指定的最小值
@Digits(integer, fraction)BigDecimal、BigInteger、String、byte、short、int、long及对应类型的封装类被注释的元素必须是一个数字,其值必须在可接受范围内
@EmailString被注释的元素必须是一个邮箱格式的字符串
@Futurejava.util.Date,
java.util.Calendar;
被注释的元素必须是一个将来的日期
@FutureOrPresentjava.util.Date,
java.util.Calendar;
被注释的元素必须是一个将来或者当前的日期
@MaxBigDecimal、BigInteger、byte、short、int、long及对应类型的封装类被注释的元素必须是一个数字,其值必须大于等于指定的最大值
@MinBigDecimal、BigInteger、byte、short、int、long及对应类型的封装类被注释的元素必须是一个数字,其值必须小于等于指定的最小值
@Negative被注释的元素必须是一个负数
@NegativeOrZero被注释的元素必须是一个负数或0
@NotBlankString被注解的元素值是否为非null,并且去空格之后的length大于0。与@NotEmpty的区别在于,@NotBlank只能注解字符串,并且忽略结尾空格。
@NotEmptyString、Collection、Map、arrays被注解的元素值是否为非null或空集合。
@NotNull任意类型被注释的元素不能为null
@Null任意类型被注释的元素必为null
@Pastjava.util.Date,
java.util.Calendar;
被注释的元素必须是一个过去的日期
@PastOrPresentjava.util.Date,
java.util.Calendar;
被注释的元素必须是一个过去或者当前的日期
@Pattern(regexp)String被注释的元素必须满足指定的正则表达式
@Positive被注释的元素必须是一个正数
@PositiveOrZero被注释的元素必须是一个正数或0
@Size(min=, max=)String、Collection、Map、arrays被注释的元素值大小介于min和max(包含)之间。
public class ValidateVo {
    @NotBlank(message = "没有名字")
    private String name;
    @Email(message = "邮箱格式不对")
    private String email;
    @Size(max=16, min=6, message = "密码位数不对")
    private String password;
    @Positive(message = "年龄不对")
    private int age;
}
相关推荐
©️2020 CSDN 皮肤主题: 游动-白 设计师:白松林 返回首页