SpringBoot入门-分组校验
我们在开发的时候会有这样的需求,当新增时不需要校验id,但当修改时id不能为空,这时就要用到分组校验了。
第一步,新增UpdateGroup接口作为更新操作的标识
public interface UpdateGroup {
}
第二步,只有更新操作才需要校验的字段打上这个标识,其他没有这个标识的都是默认分组
@NotNull(groups = UpdateGroup.class)
private Integer id;@ApiModelProperty(value = "用户名")
@NotEmpty
private String username;
第三步,在controller验证时加上这个分组标识,没加的就用默认分组
@ApiOperation(value = "保存用户")
@PostMapping
public Result save(@RequestBody @Validated User user) {return resultOk();
}@ApiOperation(value = "修改用户")
@PutMapping
//@Validated({UpdateGroup.class, Default.class})表示UpdateGroup和默认分组都参与校验
public Result update(@RequestBody @Validated({UpdateGroup.class, Default.class}) User user) {return resultOk();
}
演示,修改用户时会去校验id,保存用户不会
参考项目(模块: SpringBoot-HelloWorld): https://gitee.com/huatin/java-test
SpringBoot入门-分组校验相关推荐
- SpringBoot 实现分组校验
实现的需求是: 当enabled字段为true时,则校验某些字段,否则不校验 效果图 开启时校验 关闭时,不校验 实现步骤 引入依赖 <dependency><groupId> ...
- SpringBoot - 优雅的实现【参数分组校验】高级进阶
文章目录 Pre 需求 实现三部曲 Step1 定义分组接口 Step2 给参数分配分组 Step3 指定分组 Step4 验证 源码 Pre SpringBoot - 优雅的实现[参数校验]高级进阶 ...
- springboot中hibernate validator校验模式,分组校验,自定义校验
检验模式 上面例子中一次性返回了所有验证不通过的集合,通常按顺序验证到第一个字段不符合验证要求时,就可以直接拒绝请求了.Hibernate Validator有以下两种验证模式: 普通模式(默认是这个 ...
- element form自定义校验_SpringBoot分组校验及自定义校验注解
前言 在日常的开发中,参数校验是非常重要的一个环节,严格参数校验会减少很多出bug的概率,增加接口的安全性.在此之前写过一篇SpringBoot统一参数校验主要介绍了一些简单的校验方法.而这篇则是 ...
- SpringBoot入门到精通-SpringBoot启动流程(七)
定义自己的starter SpringBoot入门到精通-Spring的注解编程(一) SpringBoot入门到精通-SpringBoot入门(二) SpringBoot入门到精通-Spring的基 ...
- SpringBoot后端数据校验实战
本文从本人博客搬运,原文格式更加美观,可以移步原文阅读:SpringBoot后端数据校验实战 一般我们会在Controller的接口中对前端传递的参数做数据校验,这是一个后端开发人员的基本素养 在Sp ...
- java分组校验_SpringBoot @Validated注解实现参数分组校验的方法实例
前言 在前后端分离开发的时候我们需要用到参数校验,前端需要进行参数校验,后端接口同样的也需要,以防传入不合法的数据. 1.首先还是先导包,导入pom文件. org.springframework.bo ...
- SpringBoot 入门04
SpringBoot笔记 一.SpringBoot入门 1.SpringBoot简介 简化spring应用的框架 整个Spring技术栈的大整合 j2ee开发的一站式解决方案 2.微服务 2014 马 ...
- SpringBoot:参数校验的使用(validator)
文章目录 SpringBoot参数校验的使用(validator) 一.validator简介 二.注解介绍 内置注解 扩展注解 三.validator的使用(手动校验) 创建校验工具类 对一个对象进 ...
最新文章
- python3 字符串大小写转换
- lsof 查看进程打开那些文件 和 查看文件给那个进程使用
- 【收藏】误删idea 的.iml文件后的处理方法
- 办公室心理学-九型人格导图
- 面试必会系列 - 1.8 Spring IOC / AOP原理
- linux操作系统使用论文_Linux高性能服务器设计
- AWS RDS强制升级的应对之道——版本升级的最佳实践
- 中国已与36个国家(地区)海关实现“经认证的经营者”(AEO)互认
- 使用剪切板[4]: 如果把子控件一起复制? - 同时回复 ghd2004 的问题
- eclipse安装maven3
- mongoDB学习--建库、删库、插入、更新
- 调试Javascript代码(浏览器F12)
- PuttyPsftp命令行实现自动登录
- element-ui 下拉框实现拼音搜索
- AsyncTask异步加载给视频截取第一帧图片
- 宝宝吃饭不乖,怎么办?
- 【ftp的安装和使用】
- 服务器的原点和限位信号,CANopen--基于DS402协议的伺服电机原点回零模式实现
- 生成两组相互独立服从标准正态分布的随机数(推导过程)
- 谈谈企业的持续交付流水线设计