【笔记】Day2.3.2数据校验

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

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和对象成功进行校验 但是这样就很多余了

相关推荐
守护安静星空1 小时前
esp32开发笔记-工程搭建
笔记·单片机·嵌入式硬件·物联网·visual studio code
ljt27249606611 小时前
Compose笔记(七十七)--视频录制
笔记·android jetpack
周周不一样3 小时前
Andorid基础笔记2-jar&反射
笔记·pycharm·jar
智者知已应修善业4 小时前
【51单片机单按键切换广告屏】2023-5-17
c++·经验分享·笔记·算法·51单片机
凉、介5 小时前
别再把 PCIe 的 inbound/outbound、iATU 和 eDMA 混为一谈
linux·笔记·学习·嵌入式·pcie
雷工笔记7 小时前
MES / WMS / AGV 交互时序图及生产管理模块界面设计清单
人工智能·笔记
大邳草民7 小时前
Python 中 global 与 nonlocal 的语义与机制
开发语言·笔记·python
landuochong2008 小时前
claude-obsidian 再升级
人工智能·笔记·claudecode
CheerWWW8 小时前
C++学习笔记——线程、计时器、多维数组、排序
c++·笔记·学习
ljt27249606618 小时前
Compose笔记(七十六)--拍照预览
笔记·android jetpack