IT-学习笔记

JSR303校验的使用

2022-06-11  本文已影响0人  阿帕旗

JSR303校验

SpringBoot中如果使用此数据检验,需添加依赖:

  <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-validation</artifactId>
  </dependency>

常用的校验

@Null       必须为空
@NotNull    不能为空
@NotEmty    检查约束元素是否为NULL或者是EMPTY
@NotBlank   检查约束字符串是不是NULL还有被Trim的长度是否大于0,只对字符串,且会去掉前后空格

@AssertTrue  必须为真
@AssertFalse 必须为假

@Min(value)            必须大于或等于 {value}
@Max(value=,message=)  必须小于或等于 {value=130}{message="年龄最大不能超过130"}
@DecimalMin(value)     约束元素必须是一个数字,其值必须大于等于指定的最小值
@DecimalMax(value)     约束元素必须是一个数字,其值必须小于等于指定的最大值

@Size(min=,max=)       size 必须在 {min} 和 {max} 之间
@Length(min=,max=)     约束字符串的大小必须在指定的范围内

@Digits(integer,fraction)  数值超出范围(<{integer} 位>.<{fraction} 位> 预期)
@Past                      必须是过去的日期
@Future                    必须是未来日期
@Pattern(value)            必须匹配以下正则表达式:{regexp}

@Email(vlaue)  验证邮箱格式是否正确

@Range   约束的元素必须在合适的范围内

使用例子

@Component //注册bean
@ConfigurationProperties(prefix = "person") //配置实体Person类通过yaml赋值
@Validated //添加数据校验
public class Person {
    @Email(message="邮箱格式错误!")
    private String name;
    @NotEmpty
    private String age;
    @Past
    private Date birth;
    @AssertTrue
    private Boolean happy;
Person:
  name: "李玲"

错误提示

name不是邮箱格式

 Property: person.name
    Value: 李玲
    Origin: class path resource [application.yaml] - 2:9
    Reason: 邮箱格式错误!
上一篇下一篇

猜你喜欢

热点阅读