当前位置: 首页 > news >正文

@Valid注解配合属性校验注解完成参数校验并且优化异常处理

Valid注解配合属性校验注解完成参数校验并且优化参数校验异常处理

  • 1 @Valid注解配合属性校验注解完成参数校验
  • 2 优化参数校验异常处理

1 @Valid注解配合属性校验注解完成参数校验

向数据库商品分类表中新增商品分类字段,并校验传入的参数
不使用注解的传统方法:
在这里插入图片描述
在这里插入图片描述

使用注解的方法:
@Valid加在controller层的AddCategoryReq类参数前
在这里插入图片描述

@Size、@NotNull、@Max加在AddCategoryReq类属性上面
在这里插入图片描述
这样,前台通过json传递的数据,通过@RequestBody封装为对象后,@Valid就会校验对象中各个字段是否符合限制。

现在的问题是,对于不符合限制的异常,都包含在Exception类中,不能具体显示message中的信息
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2 优化参数校验异常处理

在全局异常处理类中处理这个参数校验异常:MethodArgumentNotValidException
在这里插入图片描述
在这里插入图片描述

objectError.getDefaultMessage

就可以获得错误信息(属性上面的message定义的)
并保存到ArrayList中,最后list.toString()返回String类型信息,保存到msg属性中,统一为ApiRestResponse返回对象。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

http://www.lryc.cn/news/2004.html

相关文章:

  • 每天一道大厂SQL题【Day08】
  • 朗润国际期货:2023/2/10今日期市热点及未来焦点
  • TLV73312PQDRVRQ1稳压器TPS622314TDRYRQ1应用原理图
  • 课程回顾|以智能之力,加速媒体生产全自动进程
  • C库函数文件操作(fopen、fread、fwrite、fclose)
  • 【Java|golang】1798. 你能构造出连续值的最大数目
  • VB 消息、消息队列、事件
  • Linux实用指令记录
  • Jetpack Compose中的绘制流程和自定义布局
  • 笔试题-2023-芯动-数字IC设计【纯净题目版】
  • 高压放大器在孔道灌浆非线性超声测试中的应用
  • vue3响应式原理
  • c/c++开发,无可避免的宏定义使用案例
  • SaaS的阴暗面:网络攻击武器化、平民化
  • 『CV学习笔记』图像处理透视变换(Python+Opencv)
  • 使用Fetch时,post数据时,后端接收的Content-Type为text/plain
  • 大型智慧校园系统源码 智慧校园源码 Android电子班牌源码
  • 【MySQL】你知道的MySQL中的集合函数有哪些呢?
  • 科目一罚款题
  • Maven中央仓库地址大全
  • 人工智能的未来———因果推理what if 第11章(统计模型) 文章解读
  • 百度贴吧发帖软件如何发布?
  • 如何成为java架构师?2023版Java架构师学习路线总结完成,真实系统有效,一切尽在其中
  • tkinter 实现选择文件夹或者多个文件
  • 深圳活动会议媒体邀约,电视台,网媒媒体资源
  • JDBC与Druid连接池
  • java易错题锦集二
  • 11.hadoop系列之MapReduce框架原理之InputFormat数据输入
  • LoadRunner
  • 笔试题-2023-芯原-数字前端设计or验证【纯净题目版】