JSR303数据校验中@Email()报错及其它配置

本文介绍了如何在SpringBoot中利用@Validated进行数据校验,当数据异常时会抛出异常并指出错误位置和类型,便于异常处理。需要引入相应的依赖,如`spring-boot-starter-validation`或`hibernate-validator`。通过在实体类属性上使用@Email等注解定义校验规则,然后在配置文件和测试类中设置和验证数据,可以实现详细的数据校验功能。
摘要由CSDN通过智能技术生成
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数据校验其中还包含很多内容
起始都是一样的,就是数据校验格式:大家想试试就试试吧!
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值