SpringBoot使用分组校验解决同一个实体对象在不同场景下需要不同校验规则的问题

背景

添加分类的接口不需要id字段,但更新分类的接口需要id字段,当在id字段上使用@NotNull注解时,会导致使用添加分类接口报id字段不能为空的错误

解决

定义分组

pojo/Category.java

csharp 复制代码
// 如果没有指定分组,则默认属于Default分组
public interface Add extends Default {}
public interface Update extends Default{}

定义校验项时指定归属的分组

校验时指定要校验的分组


注意事项

定义校验项时如果没有指定分组,则属于Default分组,分组可以继承

参考视频

https://www.bilibili.com/video/BV14z4y1N7pg?spm_id_from=333.788.player.switch\&vd_source=0467ab39cc5ec5940fee22a0e7797575\&p=31

相关推荐
why技术34 分钟前
从18w到1600w播放量,我的一点思考。
java·前端·后端
间彧1 小时前
Redis Cluster vs Sentinel模式区别
后端
间彧1 小时前
🛡️ 构建高可用缓存架构:Redis集群与Caffeine多级缓存实战
后端
间彧1 小时前
构建本地缓存(如Caffeine)+ 分布式缓存(如Redis集群)的二级缓存架构
后端
夫唯不争,故无尤也1 小时前
JavaWeb流式传输速查宝典
java·流式传输
苏小瀚2 小时前
算法---位运算
java·算法
Camel卡蒙2 小时前
数据结构——二叉搜索树Binary Search Tree(介绍、Java实现增删查改、中序遍历等)
java·开发语言·数据结构
2401_841495642 小时前
【数据结构】基于Floyd算法的最短路径求解
java·数据结构·c++·python·算法··floyd
珹洺2 小时前
Java-Spring入门指南(二十七)Android Studio 第一个项目搭建与手机页面模拟器运行
java·spring·android studio
程序猿DD3 小时前
Java 25 中的 6 个新特性解读
java·后端