• 值校验、范围校验、长度校验、格式校验


    1 值校验

    1.1 @Null注解
    被注解的元素必须为null

    @Null(message = "必须为null")
    private String username;
    1.2 @NotNull注解
    被注解的元素必须不为null

    @NotNull(message = "必须不为null")
    private String username;
    1.3 @NotBlank注解
    验证注解的元素值不为空(不为null、去除首位空格后长度为0) ,并且类型为String。

    @NotBlank(message = "必须不为空")
    private String username;
    1.4 @NotEmpty注解
    验证注解的元素值不为null且不为空(字符串长度不为0、集合大小不为0) ,并且类型为String。

    @NotEmpty(message = "必须不为null且不为空")
    private String username;
    1.5 @AssertTrue注解
    被注解的元素必须为true,并且类型为boolean。

    @AssertTrue(message = "必须为true")
    private boolean status;
    1.6 @AssertFalse注解
    被注解的元素必须为false,并且类型为boolean。

    @AssertFalse(message = "必须为false")
    private boolean status;
    2 范围校验
    2.1 @Min注解
    被注解的元素其值必须大于等于最小值,并且类型为int,long,float,double。

    @Min(value = 18, message = "必须大于等于18")
    private int age;
    2.2 @Max注解
    被注解的元素其值必须小于等于最小值,并且类型为int,long,float,double。

    @Max(value = 18, message = "必须小于等于18")
    private int age;
    2.3 @DecimalMin注解
    验证注解的元素值大于等于@DecimalMin指定的value值,并且类型为BigDecimal。

    @DecimalMin(value = "150", message = "必须大于等于150")
    private BigDecimal height;
    2.4 @DecimalMax注解
    验证注解的元素值小于等于@DecimalMax指定的value值 ,并且类型为BigDecimal。

    @DecimalMax(value = "300", message = "必须大于等于300")
    private BigDecimal height;
    2.5 @Range注解
    验证注解的元素值在最小值和最大值之间,并且类型为BigDecimal,BigInteger,CharSequence,byte,short,int,long。

    @Range(max = 80, min = 18, message = "必须大于等于18或小于等于80")
    private int age;
    2.6 @Past注解
    被注解的元素必须为过去的一个时间,并且类型为java.util.Date。

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Past(message = "必须为过去的时间")
    private Date createDate;
    2.7 @Future注解
    被注解的元素必须为未来的一个时间,并且类型为java.util.Date。

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Future(message = "必须为未来的时间")
    private Date createDate;
    3 长度校验
    3.1 @Size注解
    被注解的元素的长度必须在指定范围内,并且类型为String,Array,List,Map。

    @Size(max = 11, min = 7, message = "长度必须大于等于7或小于等于11")
    private String mobile;
    3.2 @Length注解
    验证注解的元素值长度在min和max区间内 ,并且类型为String。

    @Length(max = 11, min = 7, message = "长度必须大于等于7或小于等于11")
    private String mobile;
    4 格式校验
    4.1 @Digits注解
    验证注解的元素值的整数位数和小数位数上限 ,并且类型为float,double,BigDecimal。

    @Digits(integer=3,fraction = 2,message = "整数位上限为3位,小数位上限为2位")
    private BigDecimal height;
    4.2 @Pattern注解
    被注解的元素必须符合指定的正则表达式,并且类型为String。

    @Pattern(regexp = "\\d{11}",message = "必须为数字,并且长度为11")
    private String mobile;
    4.3 @Email注解
    验证注解的元素值是Email,也可以通过regexp和flag指定自定义的email格式,类型为String。

    @Email(message = "必须是邮箱")
    private String email;

  • 相关阅读:
    JAVASCRIPT首页广告轮流显示
    ASP.NET (C#) 面试笔试题目收集
    ASP 按修改时间读取文件夹中文件并且排序
    CSS Body宽度和高度
    ASP.NET页面间的传值的几种方法(总结)
    IFRAME高度自适应——框架高度等于其页面高度
    ActionScript 3.0 Step By Step系列(八):动态的数据展现源于灵活的数据绑定
    ActionScript 3.0 Step By Step系列(五):走在面向对象开发的路上,以类为基础去思考编程问题
    ActionScript 3.0 Step By Step系列(四):来自面向对象开发之前的呐喊:“学会写可重用的代码”
    ActionScript 3.0 Step By Step系列(九):使用样式(style)和皮肤(Skin)两大画笔为应用程序界面画妆
  • 原文地址:https://www.cnblogs.com/tubashu/p/15788933.html
Copyright © 2020-2023  润新知