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

相关推荐
Wang15306 小时前
jdk内存配置优化
java·计算机网络
0和1的舞者6 小时前
Spring AOP详解(一)
java·开发语言·前端·spring·aop·面向切面
Wang15306 小时前
Java多线程死锁排查
java·计算机网络
嘟嘟MD6 小时前
程序员副业 | 2025年12月复盘
后端·创业
小小星球之旅7 小时前
CompletableFuture学习
java·开发语言·学习
利刃大大7 小时前
【SpringBoot】Spring事务 && @Transactional详解 && Spring事务失效问题
spring boot·spring·事务
jiayong237 小时前
知识库概念与核心价值01
java·人工智能·spring·知识库
皮皮林5518 小时前
告别 OOM:EasyExcel 百万数据导出最佳实践(附开箱即用增强工具类)
java
..过云雨8 小时前
17-2.【Linux系统编程】线程同步详解 - 条件变量的理解及应用
linux·c++·人工智能·后端
Da Da 泓8 小时前
多线程(七)【线程池】
java·开发语言·线程池·多线程