@Valid 和@Validated 总结
@Valid 作用在方法,字段,构造器和参数上
@Validated 作用在类 方法 和参数上
- @Validated 和@Valid 配合@ModelAttribute 与BindingResult 对对象进行校验 ,如果校验不通过,那么错误信息就会封装到BindingResult对象了,可以通过bindingResult的相关方法获取详细的错误信息并返回给用户。如果不加BindingResult则会抛出异常。
2.@Validated 配合MethodValidationPostProcessor拦截器 实现对单个参数进行校验,在Controller前加@Validated
如下:注入这个拦截器
3.@Valid 支持嵌套校验
例如要对CsConfigDTO里的字段校验,需要在字段list上加@Valid,这时候CsConfigDTO里校验注解(例如@NotNull等)就会生效
4.@Validated支持分组,而@Valid不支持
注意点:First 需要继承Default,不然其他参数校验不生效
5.对BindingResult全局处理,如果每个校验都去判断的话,太啰嗦重复了,用AOP处理
1)写一个注解作为aop的切点
2) 写逻辑处理
3)使用,只要在需要处理的类上加上面写的注解即可 这时候对BindingResult的判断全交给aop去处理
@Valid 和@Validated 总结相关推荐
- 校验注解:@Valid 和 @Validated区别与用法(附详细案例)
一.案例对象 本文章会以案例为主,讲解@Valid 和 @Validated这两个注解的区别与用法. 1.首先,创建一个学生对象,如下: import lombok.Data;/*** 学生对象*/ ...
- @Valid和@Validated注解校验List<Object>
@Valid和@Validated注解校验List< Object> spring 4整合hibernate-validator6 1.导包 <dependency><g ...
- Java校验框架使用@Valid、@Validated、OVAL+Groovy
@Valid 与 @Validated Spring Validation验证框架对参数的验证机制提供了@Validated; javax提供了@Valid,配合BindingResult可以直接提供 ...
- 常用校验注解@NotEmpty,@NotBlank,@NotNull,@Valid,@Validated用法区别,以及搭配 BindingResult使用,嵌套验证等《使用|CSDN创作打卡》
文章目录 一.常用注解@NotEmpty,@NotBlank,@NotNull介绍 二.@Valid与@Validated的使用与区别 2.1@Valid与@Validated区别: 2.2嵌套验证 ...
- @Valid和@Validated验证List集合--网络踩坑记录
基于Springboot框架验证list只需要一下两步: 在Controller上添加@Validated注解,方法上添加@Valid注解,就能验证了 实体类: 情况二.只是用@Valid,并且不是S ...
- 一文探知@Valid和@Validated 的区别
使用spring boot开发的道友们,或许或多或少有用到过这两个注解,那么今天我们就来探查一下这两者的异同. 两者都可以使开发人员写的注解校验规则生效,例如在某一个字段上加上@NotNull.@No ...
- Spring中@NotEmpty,@NotBlank,@NotNull,@Valid,@Validated注解简介及简单使用
前言 在开发中,为了代码的稳定性不报空指针异常,经常需要判断前端传过来的值是否为空,为空的话就返回前端值为空的提示,才能进行下一步的操作 Maven依赖的引入: springboot 2.3.0 以后 ...
- @Valid和@Validated
简介 @Validation是一套帮助我们继续对传输的参数进行数据校验的注解,通过配置Validation可以很轻松的完成对数据的约束,配合BindingResult可以直接提供参数验证结果 所有参数 ...
- @Validated注解详解,分组校验,嵌套校验,@Valid和@Validated 区别,Spring Boot @Validated
技术栈: spring boot 2.3.3.RELEASE hibernate-validator 文末附项目源代码 目录 简述 项目依赖 全局异常处理类 基础参数校验 实体类 控制类 测试 嵌套参 ...
- @Valid与@Validated区别
1.@Valid与@Validated作用 @Valid与@Validated都是用来校验接收参数的.@Valid是使用Hibernate validation的时候使用@Validated是只用Sp ...
最新文章
- springboot集成Apollo分布式配置
- 操作系统的SPOOLING技术
- 基于JavaFX的Linux进程树
- 浏览器中的JavaScript
- 魔兽美服服务器维护,美服《魔兽世界》低人口密度服务器合并计划最新动态
- VCSA6.7 备份和还原
- 福昕pdf阅读器,怎么将pdf文件中的某一页,提取出来,即分页保存?
- My sql 存储过程实例
- 开源demo| 你画我猜——让你的生活更有趣
- 【无标题】 2022淘宝天猫双十一喵果总动员玩法攻略
- 01单片机——基础知识
- style是什么意思
- python入门基础三之流程控制
- 【前端17_JS】ES 6:Let 、Const、对象冻结、解构赋值、暂时性死区 TDZ、惰性求值、模板字符串
- peU盘ud区和efi区如何共用wim文件
- 魔改《合成大西瓜》——附试玩链接
- 困扰热力学的三个妖精
- 【前端】用百度BAE和express部署自己的node后台
- Alpine镜像中时区的设置
- Locust使用方法
热门文章
- 广东计算机专业软件排名前十大学,广东计算机专业综合实力排名出炉,这所高校位居第一...
- 2022-2028年中国FPGA芯片行业竞争格局分析及市场供需预测报告
- 高危OpenSSL 漏洞可导致远程代码执行
- 嘉定区专利工作示范企业认定解读
- OilRig又瞄准了中东电信组织,并在其代码库中增加了带有隐写术的新型C2通道(上)
- 初中生学编程杂谈(1)
- android女手机弹唱take a bow,黑科技!不会乐器也能钢琴弹唱,手机上就能练习,你应该知道...
- Android之BMI体脂计算器
- Low Resource ASR: The surprising effectiveness of High Resource Transliteration--低资源ASR:高资源音译的惊人效果
- 关于阿里矢量图iconfont的应用