1、Springboot中可以用@validated
来校验数据,如果数据异常则会统一抛出异常,并指出错位位置及出错类型,方便异常中心统一处理。
2、@validated
作用于类上,@Email()
作用于属性上
3、其中包含的数据类型有很多,下面,在这举个例子:使得name
只能支持Email
格式;
在这补充一下,不想看可以直接跳过看 3.1,
因为在springboot
项目中存在着父依赖:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.5.1</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
父依赖中存在:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.5.1</version>
</parent>
这相当于springboot的一个版本控制中心,里面几乎所有依赖的版本都有,所以我们在springboot项目中导入依赖的时候就不用管版本号了
3.1、记得必须根据自己项目框架需求,导入下面的依赖中的任意一个
①springboot项目
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
或者②,不是springboot项目,需要版本号就导入这个
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>5.2.4.Final</version>
</dependency>
3.2、接下来就是写实体类加上数据校验
3.3、application.yaml
配置内容及测试类
①yaml
person:
name: 大懒${random.uuid}
②测试类:
@SpringBootTest
class Springboot02ConfigApplicationTests {
@Autowired
private Person person;
@Test
void contextLoads() {
System.out.println(person);
}
}
3.4运行结果:得到具体的出错内容及异常
最后换为一个正确格式的邮箱地址:测试成功
4、最后JSR303数据校验其中还包含很多内容
起始都是一样的,就是数据校验格式:大家想试试就试试吧!