6 JSR303校验

news2024/12/24 2:57:28

6.1 加入依赖

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

6.2 在实体类上加注解

        在实体类上加入@Validated注解。并且在属性上方加入@Emall(message="邮箱不符合要求"),则如果该属性不满足邮箱的格式,就会报错。

package jiang.com.helloworld.pojo;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
import org.springframework.validation.annotation.Validated;

import javax.validation.constraints.Email;

@Component
@ConfigurationProperties(prefix = "cat")
@Validated
public class Cat {
    @Email(message = "邮箱地址不符合规范!")
    private String catName;
    private Integer catAge;

    @Override
    public String toString() {
        return "Cat{" +
                "catName='" + catName + '\'' +
                ", catAge=" + catAge +
                '}';
    }

    public String getCatName() {
        return catName;
    }

    public void setCatName(String catName) {
        this.catName = catName;
    }

    public Integer getCatAge() {
        return catAge;
    }

    public void setCatAge(Integer catAge) {
        this.catAge = catAge;
    }

    public Cat(String catName, Integer catAge) {
        this.catName = catName;
        this.catAge = catAge;
    }

    public Cat() {
    }
}

6.3 运行结果

        如果属性不满足邮箱的格式:

         如果属性满足邮箱的格式:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/727416.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Selenium自动化测试技巧

目录 前言&#xff1a; Selenium自动化 跨浏览器测试中的Selenium 利用正确的定位器 数据驱动的测试 不要依赖特定的驱动程序 选择器顺序 使用PageObjects设计模式 提倡wait避免sleep 关闭Firebug起始页 前言&#xff1a; Selenium是一个广泛使用的自动化测试框架&a…

Android11 Settings加载流程

一、系统设置首页(一级菜单)&#xff1a; 1、Settings 之所以要在此定义空的Activity&#xff0c;是为了外部应用能直接跳转到XX_SettingsActivity界面&#xff0c;因为如果只是fragment的话&#xff0c;外部是没法跳转到fragment界面的&#xff0c;跳转到XX_SettingsActivit…

【无公网IP】在外Windows远程连接MongoDB数据库

文章目录 前言1. 安装数据库2. 内网穿透2.1 安装cpolar内网穿透2.2 创建隧道映射2.3 测试随机公网地址远程连接 3. 配置固定TCP端口地址3.1 保留一个固定的公网TCP端口地址3.2 配置固定公网TCP端口地址3.3 测试固定地址公网远程访问 转载自cpolar极点云文章&#xff1a;公网远程…

Camera API1 使用说明

Camera API2 使用说明 目录 一、开启相机 1.1创建项目 1.2注册权限 1.3配置相机特性要求 1.4 获取摄像头的个数 1.5 根据 ID 获取 CameraInfo facing 1.6 开启相机 1.7 关闭相机 二、预览 2.1认识 Parameters 2.2 设置预览尺寸 2.3添加预览 Surface 2.4 开启和关…

高级篇九、性能分析工具的使用

目录 2、查看系统性能参数3、统计SQL的查询成本&#xff1a;last_query_cost4、 定位执行慢的 SQL&#xff1a;慢查询日志4.1 开启慢查询日志参数4.2 查看慢查询数目4.3 案例演示 2、查看系统性能参数 在MySQL中&#xff0c;可以使用 SHOW STATUS 语句查询一些MySQL数据库服务…

【C++】STL——list介绍及使用

&#x1f680; 作者简介&#xff1a;一名在后端领域学习&#xff0c;并渴望能够学有所成的追梦人。 &#x1f681; 个人主页&#xff1a;不 良 &#x1f525; 系列专栏&#xff1a;&#x1f6f8;C &#x1f6f9;Linux &#x1f4d5; 学习格言&#xff1a;博观而约取&#xff0…

安装Anaconda

一、Anaconda简介 Anaconda&#xff0c;一个开源的Python发行版本&#xff0c;可用于管理Python及其相关包&#xff0c;包含了conda、Python等180多个科学包及其依赖项。当我们需要不同的Pytorch版本的时候&#xff0c;不需要卸载重新安装&#xff0c;可以通过Anaconda创建不同…

短视频抖音账号矩阵系统源码---功能架构示例1

一、短视频账号矩阵系统源码开发服务器集群化处理开发成本更低&#xff08;前提&#xff09; 什么是集群化处理视频内存内耗&#xff1f;集群化处理视频内存内耗是指通过建立集群系统&#xff0c;将视频处理任务分配给多个计算节点进行并行处理&#xff0c;以减少单个计算节点…

氨基酸中间体35309-53-6,cyclo(Asp-Asp),CYCLO(-天冬氨酸-ASP)

&#xff08;文章资料汇总来源于&#xff1a;陕西新研博美生物科技有限公司小编MISSwu&#xff09;​ 试剂基团反应特点&#xff08;Reagent group reaction characteristics&#xff09;&#xff1a; cyclo(Asp-Asp)&#xff0c;35309-53-6&#xff0c;一种氨基酸中间体&…

平衡搜索二叉树——AVL树

AVL树 1. AVL树的概念2. AVL树节点的定义3. AVL树的插入思路4. AVL树的平衡调整思路平衡因子更新思路LL型——右单旋RR型——左单旋LR型——左右旋RL型——右左旋 5. AVL树插入判断平衡调整类型6. AVL树插入的代码实现7. AVL树总结8. AVL树的验证9. AVL树的性能 1. AVL树的概念…

600多个人工智能AI工具汇总(AIGC时代-超级个体的崛起),免费提供和介绍(第一讲)

这里是600多个人工智能AI工具汇总第一讲&#xff0c;每天介绍5个&#xff0c;主要是我写不完教程了&#xff0c;你懂的&#xff0c;视频最后会告诉大家获取方式的。现在请大家同我一起进入AIGC的世界。 第一个&#xff1a;《AIGC时代&#xff1a;超级个体的崛起》用来介绍AIGC…

【AI绘画】用魔法打败魔法,用ChatGPT生成绘画

随着人工智能技术的不断发展&#xff0c;我们可以利用ChatAI这款大语言模型来辅助我们在绘画过程中获得更多创意和灵感。 一、了解AI绘画功能 它可以快速、自动、准确地从大量原始数据中生成新内容&#xff0c;大大提高了内容创作效率&#xff0c;AI绘画使用机器学习算法&…

金色传说:SAP-MM-ME51N/ME52N采购申请增强

文章目录 业务场景一、增强方式:BADI二、增强步骤1.SE18/SE19创建增强实施2.增强代码3.实现效果总结业务场景 在企业中,通常需要控制采购业务中的特殊权限,本次遇到的业务场景:公司启用了SAP的 PPDS模块, 因此,需要控制业务员不能手动使用ME51N创建采购申请.因为标准的权限对象…

LNMP架构及应用部署(搭建电影网站)

目录 一、安装nginx 1、关闭防火墙和selinux 2、安装依赖软件 3、创建管理nginx用户 4、解压源码包 5、安装nginx 6、优化nginx命令 7、检测配置文件是否有错误 8、启动nginx 9、编辑nginx脚本&#xff08;可根据自己需求编辑&#xff09; 二、安装mysql数据库 1、先查看有没有…

Java安全——数字签名

Java安全 数字签名 签名类 签名的jar文件可以通过Java的jarsigner工具进行管理。jarsigner工具使用密钥库中的信息来查找特定的实体&#xff0c;并使用这些信息对jar文件进行签名或验证签名。 要创建签名的jar文件&#xff0c;我们可以使用以下命令&#xff1a; jarsigner…

游戏引擎的cpu/gpu粒子系统设计思想

开篇 网上有很多篇粒子系统源码解析&#xff0c;但是只是简单的接口罗列&#xff0c;没有从最原理出发去讲清楚粒子系统的来龙去脉&#xff0c;我将从粒子系统的本质去讲清楚它的设计理念&#xff0c;当理解了它的理念以后&#xff0c;很多粒子遇到的问题就会迎刃解决了&#…

常用的 Vs Code插件

推荐下自己在使用的 vs code 插件 1. Vue VSCode Snippets / Vue 3 Snippets 功能&#xff1a; 提供vue 相关代码块 2. Git History 功能&#xff1a;查看文件git提交历史 用法&#xff1a;右键你想要查看的文件&#xff0c;选 Git:Open File History 3. GitLens — Git …

LVS+Keepalived架构(负载均衡高可用集群)

一、高可用简介 普通的群集的部署是通过一台调度器控制调配多台节点服务器进行业务请求的处理&#xff0c;但是仅仅是一台调度器&#xff0c;就会存在极大的单点故障风险&#xff0c;当该调度器的链路或则调度器本身出现故障时&#xff0c;就会导致整个业务的无法正常进行 而高…

超越传统标注方法:doccano平台提供智能化数据标注解决方案

目录 前言一、doccano的介绍、安装1-1、doccano的介绍1-2、doccano的安装、初始化配置 二、序列标注任务2-1、登录2-2、创建任务2-3、数据上传2-4、添加标签2-5、任务标注2-6、数据导出 总结 前言 Doccano是一种用于文本标注的开源工具&#xff0c;旨在简化和加速标注任务的进行…

RocketMQ5.0--定时消息

RocketMQ5.0–定时消息 一、定时消息概览 定时消息或延迟消息是指消息发送到Broker后&#xff0c;并不立即被消费而是要等到特定的时间后才能被消费。RocketMQ并不支持任意的时间精度延迟&#xff0c;只支持特定延迟时间的延迟消息。 消息延迟级别在Broker端通过MessageStore…