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

参数传了报错没传参数识别不到参数传丢

【记一次参数传值了但报错未传值的问题解决历程】
问题描述:同一个接口,用测试类调可以成功,用postman调用一直报错少参数,后又尝试了用idea自带的http调用,同样报错参数未传值。
在这里插入图片描述
如图,传值了报错未传值。

Controller层及DTO写法如下图:
在这里插入图片描述
在这里插入图片描述

解决历程

1.用postman调用一直报错参数未传值,但用测试类调可以成功,怀疑是postman的问题。后又尝试了用idea自带的http调用,结果同样,故排除postman的问题。

接口入口处打了断点,但请求参数校验处就已经失败了,没进入到接口内部。

2.怀疑是因为入参通过注解@Valid + @NotBlank 做了非空校验,注解校验错误,传值校验成未传值了。故去掉@Valid再次请求接口

在这里插入图片描述
如图,很明显,打印的参数少了!所以怀疑是参数传丢了!怎么传丢呢,必然是http传输的过程中丢的,怀疑是参数名没解析。

3.更换参数名如下图,再试,成功。

在这里插入图片描述
特殊参数名未解析到,不愿更换参数名可通过加注解@JSONField或@JsonProperty强制映射。

@JSONField注解是阿里巴巴的fastjson框架中的注解,用于指定JSON字符串中的属性名和Java对象中的属性名之间的映射关系

@JsonProperty注解是Jackson框架中的注解,用法类似于@JSONField,也是指定JSON字符串中的属性名和Java对象中的属性名之间的映射关系

4.@JSONField注解

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

5.@JsonProperty注解

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

6.@JSONField和@JsonProperty注解的其他用法可参考

https://www.jb51.net/program/3223658h7.htm


http://www.kler.cn/a/303090.html

相关文章:

  • 【无法下载github文件】虚拟机下ubuntu无法拉取github文件
  • HarmonyOS NEXT应用开发边学边玩系列:从零实现一影视APP (二、首页轮播图懒加载的实现)
  • UDP报文格式
  • 深入云电脑PC Farm技术探讨,以阿里云、华为云、ToDesk为例
  • 【后端面试总结】tls中.crt和.key的关系
  • SpringBoot整合Dubbo+zookeper[详细版]
  • ‌汽车的舒适进入功能是什么意思?
  • 【区块链 + 人才服务】Blockchain Workshop- 区块链编程实践平台 | FISCO BCOS应用案例
  • Maven从入门到精通(二)
  • 设计模式-行为型模式-备忘录模式
  • 关于.net Framework向.net core的移植
  • HarmonyOS SDK开放能力简介
  • 基于学习功能聚合的英语口语学习APP
  • flink实战--如何基于java-agent技术上线收集任务流量功能
  • 向量——通俗地解释
  • 网络编程(UDP)
  • 详解贪心算法
  • STM32 如何生成随机数
  • CentOS 7下CX5-RDMA网络测试
  • 6年前倒闭的机器人独角兽,再次杀入AGV市场
  • Vue3+TS项目封装一个公共的el-table组件二次封装
  • ADB 之 logcat 极简小抄(过滤日志、保存日志到文件)
  • C++复习day11
  • 基于人工智能的自动驾驶系统项目教学指南
  • 【C++】STL容器-string的遍历
  • Android10源码刷入Pixel2以及整合GMS