【笔记】Day2.3.2数据校验

news2024/11/24 2:49:31

此项目中有两种数据校验方式

1.hibernate-validated注解方式

controller头上开启数据校验模式需要加入@Validated

然后就可以 在参数前面加入任意的数据校验里的注解 例如;:NotNull() @NotEmpty()等

面对字符串型的数据校验 参数前可以使用@NotBlank()

而面对对象/DTO实体数据校验时 此项目在如图中设置一个方法作为对 对象和DTO实体的数据校验 当前端数据传入时不符合hibernate-validated注解的数据校验的注解所限制的条件时 直接将不符合的message抛出

这样就能对对象和DTO实体进行数据校验了

这样做原因有二:

1.如果直接在DTO里面的对象/参数进前面添加注解 hibernate-validated不生效 所以使用AOP切面对DTO进行数据校验 这样就比下面那个方法更加的简洁(?是吗)

2.而在controller头和对象/DTO之前同时添加@validated注解虽然可以让DTO和对象成功进行校验 但是这样就很多余了

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

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

相关文章

mongodb GUI工具(NoSQLBooster)

介绍 跨平台的MongoDB GUI工具,支持Windows、macOS和Linux。自带服务器监控工具、Visual Explain Plan、查询构建器、SQL查询等功能。提供免费版本,但功能相比付费版本有所限制。 免费版可供个人/商业使用,但功能有限。 安装成功后&#x…

让你的Mac电脑风扇工作起来,能够控制风扇的实用小工具

不知道你们有没有这个苦恼,Mac电脑明明自带散热风扇,但是很少工作,所以总是会有发热的问题,虽然电脑支架能够一定程度解决热量无法散出的问题,但是总归是不如风扇工作散热的效果好 那么如何让你的Mac风扇工作起来呢&a…

UE4 材质学习笔记08(雨滴流淌着色器/雨水涟漪着色器)

一.雨滴流淌着色器 法线贴图在红色通道和绿色通道上,那是法线的X轴和Y轴,在蓝色通道中 我有个用于雨滴流淌的蒙版,在Alpha通道中,有个时间偏移蒙版。这些贴图都是可以在PS上制作做来的,雨滴流淌图可以直接用笔刷画出来…

ModelMapper的常见用法 ,号称是beanUtils.copyProp....的升级版??,代码复制粘贴即可复现效果,so convenient

官网案例 以下将官网案例做一个解释 1)快速入门 递归遍历源对象的属性拷贝给目标对象 拷贝对象下对象的属性值 Data class Order {private Customer customer;private Address billingAddress; }Data class Customer {private Name name; }Data class Name {pr…

ubuntu24 finalshell 无法连接ubuntu服务器, 客户端无法连接ubuntu, 无法远程连接ubuntu。

场景: 虚拟机新创建一个最小化的ubuntu服务器,使用finalshell连接服务,发现连接不上。 1. 查看防火墙ufw 是否开启,22端口是否放行 2. 查看是否安装openssh server, 并配置 我的问题是安装了openssh server 但是没有配置root可…

计算湘军,征程无限!麒麟信安受邀出席2024世界计算大会

2024世界计算大会 9月24日上午,以“智算万物 湘约未来——算出新质生产力”为主题的2024世界计算大会在长沙开幕。中共湖南省委书记沈晓明出席,中共湖南省委副书记、省人民政府省长毛伟明致欢迎辞,工业和信息化部党组成员谢远生出席并致辞&am…

fastdfs下的doc文件可以访问,但是图片无法访问报错404,解决记录

fastdfs下的doc文件可以访问,但是图片无法访问报错404 以下内容主要讲linux的问题 以下内容主要讲linux的问题 以下内容主要讲linux的问题 以下内容主要讲linux的问题 以下内容主要讲linux的问题 第1项:查看Nginx的日志 可以先去查看Nginx的日志,在你Nginx的安装目录下的lo…

一分钟带你了解巧手打字通在线学习平台

巧手打字通平台简介 巧手打字通是一个专为打字初学者,特别是中小学生量身设计的在线打字练习平台。该平台通过科学、有趣且高效的教学方式,帮助用户快速掌握打字技巧,提升打字速度和准确率。 打字学习路径 平台提供了整套的从入门到精通的…

BTB结构分析

I-BTB 每个entry对应一条指令;IBTB相较于其他的结构,有最大的tag开销,因为每个entry都有tag域段;entry内部没有冗余信息,每个信息都是必须的,同时每个entry的内容都不会有重复;每分配一个新的br…

过拟合 overfitting

from [Approaching Any Machine Learning Problem] 人话理解 过拟合的重点在于在训练集上的表现上升,而测试集的表现没有像在训练集上表现的这么好,就算过拟合。分的细的话可以分为测试集表现下降和保持稳定,或者小幅度上升。 详细上下文 …

PAT甲级-1013 Battle Over Cities

题目 题目大意 给定一个城市图,如果攻陷一个城市,该城市连接的所有路都要被销毁。要求计算出连通剩余的城市最少需要修建几条路。该图有n个顶点,m条边,k个重点城市。分别求出每个重点城市被攻陷,连通剩余城市需要修建…

ALV 和 导出 Excel 导出负号前置

CONVERSION_EXIT_Z0001_OUTPUT FUNCTION conversion_exit_z0001_output. *"---------------------------------------------------------------------- *"*"本地接口: *" IMPORTING *" REFERENCE(INPUT) *" EXPORTING *"…

javafx中root的invoke方法报错Method too large问题记录

问题描述   在使用javafx绘制PC桌面程序页面时&#xff0c;使用到了tableview&#xff0c;tableview可以很方便的维护一个可编辑的表&#xff0c;简易代码如下。 var bomList observableListOf<BomContent.BomsInfo>()tableview(bomList) {column("客户名称"…

虚拟内存及内存管理机制

图源自 小林coding 虚拟内存是什么&#xff1f; 虚拟内存是一种计算机系统管理内存的技术&#xff0c;它使操作系统能够将物理内存&#xff08;RAM&#xff09;和硬盘存储结合使用。虚拟内存的主要作用包括以下几点&#xff1a; 扩展物理内存的使用&#xff1a; 虚拟内存允许…

一种用于超稳激光的数字控制锁频电路

摘要 超稳激光具有超高的频率稳定度和极窄线宽等优点&#xff0c;广泛应用于各种精密测量物理实验。为了确保不引入额外开关噪声&#xff0c;其频率锁定电路通常采用模拟电路实现&#xff0c;但是模拟控制电路存在锁定参数调节不方便、难以实现自动锁定和远程控制等方面的不足。…

【技术】Jaskson的序列化与反序列化

文章目录 概念解释1.Jasksona.JSONJSON 的基本特点JSON 的基本结构JSON 示例 b.ObjectMapper类 2.序列化与反序列化a.序列化对象序列化集合序列化ListSetMap b.反序列化反序列化单个对象反序列化集合对象 概念解释 1.Jaskson Jackson 是一个用于处理 JSON 数据的 Java 库,所以…

大模型烧钱战,百度云亟需突围之路

百度云在人工智能大模型领域投入了大量资源&#xff0c;但高昂的研发、运营成本与压力使其在盈利方面遭遇了重大挑战&#xff0c;这成了百度集团必须正视的问题。 转载&#xff1a;科技新知 原创 作者丨萧维 编辑丨蕨影 上个月末&#xff0c;以“智能跃迁”为主题的百度云智大…

stm32 g0 使用内部flash读写

个别芯片存储空间为32k&#xff0c;注意使用范围&#xff0c;并且利用debug或者.map文件&#xff0c;避开程序占用的页。 g0hal库和其他系列有些不同&#xff0c;根据官方例程修改。 GO30F6P6是 32k FLASH.基地址0x8000000&#xff0c;长度0x8000。即0x8000000-0x8008000。在…

访问公司gitlab出现 502 Bad Gateway 错误,已经解决

文章目录 1、通过 WindTerm 连接 Ubuntu2、检查 GitLab 服务状态3、查看 Unicorn 日志4、检查 Unicorn 的 stderr 日志5、检查 PID6、停止当前运行的 Unicorn 服务7、确认 Unicorn 已停止8、删除陈旧的 .pid 文件9、重新启动 GitLab 服务10、检查状态11、查看 Unicorn 日志 我公…

会话好友区设计与开发(五)

会话好友区设计与开发&#xff08;五&#xff09; 前言 在上一集&#xff0c;我们完成了选中和切换item的颜色变化的功能&#xff0c;那么这一集&#xff0c;我们将开始封装一些必要的函数。 需求 我们需要封装一些逻辑&#xff0c;那么我们也要进行分析。 在上一集我们虽…