数据校验的总结

news2024/11/20 0:21:32

业务层进行复杂检查
简单校验交给Controller校验,能流到业务的层的数据就是基本合法

引入依赖:spring-boot-starter-validation

能标注的所有注解在这两个地方看

jakarta.validation.constraints、

org.hibernate.validator.constraints
 

使用步骤:先在dto实体类,给各个属性标记上注解@Email


然后在Controller的参数上放上@Valid或@Validated(更推荐,因为Validated多了分组校验)

数据校验---不推荐这样做

这样做完之后就可以完成校验,但是还是不能返回前端message里的信息。

所以可以在参数后面加一个BingdingResult,就可以返回更完整的校验信息。(如果想校验哪个参数,就在后面加BingdingResult,而不是放最后)。

如果开启了BingdingResult。一旦写了BingdingResult就会封装在BingdingResult中不会抛出异常,前端就不会看到错误,只会收到200。就需要手动处理校验错误。----------这样写的话不太好。

所以一般都是用全局异常处理,一旦校验出错由全局异常处理器统一处理。

@Validated支持分组功能,对不同请求实现不同的验证逻辑。

实现的话就是定义不同的接口,也就是不同的分组。然后在@Validated的属性里指定不同的验证组即可。

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

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

相关文章

Leecode热题100-56.合并区间

以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。 示例 1: 输入:intervals [[1,3…

如何获取 uni-app 应用发布所需的证书、私钥与配置文件

引言 在开发和发布iOS应用时,开发者常常会面临一系列复杂的证书、私钥密码以及配置文件的管理问题。这些配置不仅影响到应用的开发调试,还决定了应用是否能够顺利通过审核并发布到App Store。对于使用uni-app进行开发的开发者来说,自动生成的…

IPguard与Ping32:安全性、易用性与稳定性全面对比

在当今这个数据驱动的时代,信息安全已成为企业运营的核心要素。随着网络攻击手段的不断升级,如何确保企业数据的安全、易用与稳定,成为了众多企业关注的焦点。IPguard与Ping32作为两款备受瞩目的防泄密软件,各自以其卓越的性能和独…

VBA高级应用30例应用3Excel中的ListObject对象:选择表的一部分

《VBA高级应用30例》(版权10178985),是我推出的第十套教程,教程是专门针对高级学员在学习VBA过程中提高路途上的案例展开,这套教程案例与理论结合,紧贴“实战”,并做“战术总结”,以…

python none代表什么

python中None代表一个特殊的空值,即为一个空对象,没有任何的值。 一般用于assert,判断,函数无返回时的默认,具体如下: 1、assert断言: mylist [a, b, c] >>> assert len(mylist) is…

DELL R720服务器阵列数据恢复,磁盘状态为Foreign

服务器无法正常进入系统,物理磁盘状态变成了Foreign 虚拟磁盘状态变成了Failed 阵列已经丢失了,需要手工强制导入外部配置 单击 Main Menu 屏幕上的 Configuration Management。单击 Manage Foreign Configuration 单击 Preview Foreign Configurati…

用IntStream生成0到n的流,并找出不在numSet中的数字

给定一个包含 [0, n] 中 n 个数的数组 nums &#xff0c;找出 [0, n] 这个范围内没有出现在数组中的那个数。 整体思路就是标题说的那样 首先将nums转化为HashSet&#xff0c;这里也可以不一定是HashSet&#xff0c;是ArrayList也可以 Set<Integer> numSet Arrays.str…

【数据集】建筑节能分析用典型年数据-EPW

【数据集】建筑节能分析用典型年数据-EPW 建筑节能分析用典型年数据-EPWEPW数据获取Climate Consultant软件下载安装及使用软件下载EPW数据读取参考建筑节能分析用典型年数据-EPW EPW数据是由美国能源部开放的专业气象分析软件Energyplus所采用的一个数据格式,几乎涵盖了全球…

设计师找素材,收藏好这8个网站

在设计工作中&#xff0c;找到合适的素材是提升作品质量的关键。我整理了8个设计必备的素材网站&#xff0c;这些平台提供丰富的设计资源&#xff0c;包括模板、图标、照片和插图等&#xff0c;帮助你轻松实现创意构想。无论你是做平面设计、网页设计还是营销材料&#xff0c;这…

【text2sql】新模型架构RESDSQL取得了SOTA效果

这篇论文的标题是《RESDSQL: Decoupling Schema Linking and Skeleton Parsing for Text-to-SQL》&#xff0c;作者是来自中国人民大学信息学院&#xff0c;发表于2023年的AAAI。论文的主要贡献在于提出了RESDSQL框架&#xff0c;该框架通过解耦模式链接和骨架解析来提高Text-t…

开源商城系统crmeb phpstudy安装配置

BOSS让我最快时间部署一套开源商场系统&#xff0c;今天就以crmeb为例。 快速部署在linux中我会首选docker&#xff0c;因为我要在windows中部署&#xff0c;本文就选用phpstudy集成环境做了。 什么是crmeb 我从官网摘点&#xff1a; CRMEB产品与服务 CRMEB通过将CRM&#x…

从零开始学习Vue3

1、Vue3特点&#xff1a;更多的API特性&#xff1b;体积更小&#xff0c;速度更快&#xff1b;解决遗留问题&#xff1b;更加强壮。 2、通过全面学习Vue3&#xff0c;新手与老手的收获&#xff1a; 新手—如何去使用Vue完成项目的开发 老手—深度理解特性背后的原理 3、达到学习…

AVL树学习笔记

目录 1.AVL树的概念 2.AVL树的实现 2.1AVL树的结构 2.2 AVL树的插入 2.2.1 AVL树插入的大致过程 2.2.2 平衡因子的更新 2.2.3 插入节点及更新平衡因子的代码实现&#xff1a; 2.3 旋转 2.3.1 旋转的原则 2.3.2 右单旋 2.3.3 左单旋 2.3.4 左右双旋 2.3.5 右左双旋…

18、电科院FTU检测标准学习笔记-高低温性能试验

作者简介&#xff1a; 本人从事电力系统多年&#xff0c;岗位包含研发&#xff0c;测试&#xff0c;工程等&#xff0c;具有丰富的经验 在配电自动化验收测试以及电科院测试中&#xff0c;本人全程参与&#xff0c;积累了不少现场的经验 ———————————————————…

第二百七十二节 JPA教程 - JPA查询Is Empty示例

JPA教程 - JPA查询Is Empty示例 IS EMPTY运算符是IS NULL的逻辑等价物&#xff0c;但是对于集合。 查询可以使用IS EMPTY运算符或IS NOT EMPTY来检查集合关联路径是否解析为空集合或至少有一个值。 我们可以使用EMPTY来检查属性是否为空。 以下JPQL显示如何使用EMPTY获取员工…

解压缩软件哪个好?不同场景下的最佳选择

解压缩软件在日常工作与生活中发挥着至关重要的作用&#xff0c;从简单的文件解压到处理大型项目&#xff0c;选择一款适合自己的解压缩软件能够大幅提高工作效率。 面对众多解压缩工具&#xff0c;如WinRAR、7-Zip、解压专家、PeaZip等&#xff0c;如何根据不同的使用场景选择…

基于京东:HotKey实现自动缓存热点Key!!!

一.引言 某些热点数据&#xff0c;我们提前如果能够预判到的话&#xff0c;可以提前人工给数据加缓存&#xff0c;也就是缓存预热&#xff0c;将其缓存在本地或者Redis中&#xff0c;提高访问性能同时&#xff0c;减低数据库压力&#xff0c;也减轻后端服务的压力。但是&#…

imageJ 将多图中的同一条划线数据用曲线展示

1、导入图片&#xff0c;将所需的图片放进同一个文件夹&#xff0c;按顺序命名 2、划线 3、导出数据及画曲线 1&#xff09;得到单图的曲线上的图像数据&#xff1a;选中图片 -----> ctrl k 2&#xff09;将多张图像的同一条曲线位置的图像数据在同一数轴上画出曲线 步骤…

SpringBoot中applicaiton.properties转换成application.yml 插件

点击idea中的File----->点击setting----->点击Plugins-----> 输入 Convert Yaml and Properties File ----->然后Install下载 -----> 点击OK应用 最后选择Application.properties----->右击Convert YAML and properties File----->即转换成功了

VUE项目与原生Javascript Js功能模块的整合-政府项目涉及Ukey使用和开发

一、VUE项目与原生Javascript Js功能模块的整合 因为产品要整体做三级等保验证&#xff0c;而等保需要做密码安全评价&#xff08;密评&#xff09;&#xff0c;最终的方案就是需要使用 Ukey 来登录管理后台&#xff0c;而这最终涉及在我们的VUE项目中去调用第三方 UKEY 厂商提…