• SpringBoot @Valid 参数校验


    一、常用校验注解

    空检查

    • @Null:限制只能为null
    • @NotNull:限制必须不为null
    • @NotEmpty:验证注解的元素值不为null且不为空(字符串长度不为0、集合大小不为0)
    • @NotBlank:验证注解的元素值不为空(不为null、去除首位空格后长度为0),不同于@NotEmpty,@NotBlank只应用于字符串且在比较时会去除字符串的空格

    Boolean检查

    • @AssertFalse:限制必须为false
    • @AssertTrue:限制必须为true

    长度检查

    • @Size(max, min):限制字符串、数组、集合长度范围必须在min到max之间
    • @Length(min=, max=):验证注解的元素值长度在min和max区间内,只能用于字符串

    日期检查:Date/Calendar

    • @Past:限制必须是一个过去的日期
    • @Future:限制必须是一个将来的日期
    • @Pattern(regexp="reg"):限制必须符合指定的正则表达式

    数值检查:建议使用在Stirng,Integer类型

    • @Min(value):限制必须为一个不小于指定值的数字
    • @Max(value):限制必须为一个不大于指定值的数字
    • @DecimalMin(value):限制必须为一个不小于指定值的数字
    • @DecimalMax(value):限制必须为一个不大于指定值的数字
    • @Digits:验证是否为数字
    • @Digits(integer, fraction):限制必须为一个小数,且整数部分的位数不能超过integer,小数部分的位数不能超过fraction
    • @Range(min=long1,max=long2):检查数字是否在范围min到max之间

    其他验证

    • @Vaild:递归验证,用于对象、数组和集合,会对对象的元素、数组的元素进行一一校验
    • @Email:用于验证一个字符串是否是一个合法的右键地址,空字符串或null算验证通过
    • @URL(protocol=协议,host=主机,port=端口号,regexp=正则表达式,flags=标识):用于校验一个字符串是否是合法URL
  • 相关阅读:
    Java集合概述
    高可用性、负载均衡的mysql集群解决方案
    openOffice转换的时候乱码在linux下使用openOffice的时候发现在转换后出现了乱码
    (转)Linux安装SwfTools-0.9.2安装事,在执行make install时报错
    (转)java使用jsp servlet来防止csrf 攻击的实现方法
    (转)卫语句
    python的全局变量玩法还挺特别的
    那万恶的ssh真是麻烦
    关于有符号与无符号的字节
    开源而又强大的迷你型web服务器推荐
  • 原文地址:https://www.cnblogs.com/Dm920/p/15903245.html
Copyright © 2020-2023  润新知