学习目标:
JSR-303的用法以及实现方法(包括详细的基本校验方法)
学习内容:
1、 JSR-303校验的前提
2、 JSR-303的基本校验规则
首先对Maven引入依赖:
//此处为Maven项目中pom.xml的依赖配置
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
1. Bean Validation 中内置的 constraint 👇
@代码 | 代码内容 |
---|---|
@Null | 被注释的元素必须为 null |
@NotNull | 被注释的元素必须不为 null |
@AssertTrue | 被注释的元素必须为 true |
@AssertFalse | 被注释的元素必须为 false |
@Min(value) | 被注释的元素必须是一个数字,其值必须大于等于指定的最小值 |
@Max(value) | 被注释的元素必须是一个数字,其值必须小于等于指定的最大值 |
@DecimalMin(value) | 被注释的元素必须是一个数字,其值必须大于等于指定的最小值 |
@DecimalMax(value) | 被注释的元素必须是一个数字,其值必须小于等于指定的最大值 |
@Size(max, min) | 被注释的元素的大小必须在指定的范围内 |
@Digits (integer, fraction) | 被注释的元素必须是一个数字,其值必须在可接受的范围内 |
@Past | 被注释的元素必须是一个过去的日期 |
@Future | 被注释的元素必须是一个将来的日期 |
@Pattern(value) | 被注释的元素必须符合指定的正则表达式 |
2. Hibernate Validator 附加的 constraint 👇
@代码 | 代码内容 |
---|---|
被注释的元素必须是电子邮箱地址 | |
@Length | 被注释的字符串的大小必须在指定的范围内 |
@NotEmpty | 被注释的字符串的必须非空 |
@Range | 被注释的元素必须在合适的范围内 |
//application.yaml文件内容(数据)
person:
name: 帅气可爱的XXX
age: 14
happy: false
//@ConfigurationProperties为注入的属性(来自于yaml文件)
//@Validated为JSR-303所使用的注解
@Component
@ConfigurationProperties(prefix = "person")
@Validated
public class Person {
//Email为邮箱格式验证的注解
//message
@Email(message = "这么可爱的人名可不是邮箱地址哦~")
private String name;
private Integer age;
private Boolean happy;
}
//Constructer+Setter+Getter+ToString方法
运行run方法后 👇
by the way 👇
//在引入后可以点入查看源码,在constraints目录下是所有JSR-303的数据校验方式可以按需使用
import org.springframework.validation.annotation.Validated;
import javax.validation.constraints.Email;
=========================================================
**2021/7/22 ==== ❤sqkalms❤ **