转自:springboot接口入参下划线转驼峰以及返回参数驼峰转下划线实现 - 李东平|一线码农 - 博客园 (cnblogs.com)

1.背景

在实际开发中,通常来说java里面是使用驼峰的命名规则;

但是有时候在对接其他三方平台的接口时,要求使用下划线的命名规则,这时候就涉及到如何让自己的接口满足三方平台的下划线;

实现方式有

1.java里面也使用下下划线的方式接收和响应,但是不推荐这样,因为虽然满足了接口需求,但是不符合java里面的命名规范;

2.java里面使用驼峰,接收到参数后手动转换,这样做太麻烦.

3.java里面使用驼峰,写一个工具方法,通过注解的方式,统一转换,推荐,也是实际开发中常用的方式

那些地方需要转换

1.传入参数的时候(下换线转为驼峰)

2.响应结果的时候(驼峰转为下划线)

因为响应结果的时候(驼峰转为下划线)比较简单,先搞定这个

2.响应结果的时候(驼峰转为下划线)

方式一:在返回对象的类上加注解(推介)

@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class)
案例如下:

方法二:在字段上注解

@JsonProperty(value = "order_card")

3.传入参数的时候(下换线转为驼峰)

方式一:自己手动封装,不推荐,略;

方式二:接收为Map对接,通过Json转换(如果系统中只有少数个别接口需要转换,可以这样写);

步骤一:接收对象上的字段上加注解 @JsonProperty(value = "order_card")

步骤二:控制层出的写法如下

方式三:通过实现接口HandlerMethodArgumentResolver的方式,强烈推荐

步骤一:自定义注解 ParameterConvert

View Code

步骤二:自定义类AbstractCustomizeResolver

View Code

步骤三:自定义类 UnderlineToCamelArgumentResolver

View Code

步骤四:整合到springboot中,在WebConfig中添加如下代码

View Code

步骤五:使用,很简单,在接收参数的对象前加注解

4.完美

如果觉得文章对您有帮助,希望您能 关注+推荐 哦

来源:springboot接口入参下划线转驼峰以及返回参数驼峰转下划线实现 - 夏秋初 - 博客园

springboot接口入参下划线转驼峰以及返回参数驼峰转下划线实现相关推荐

  1. 接口入参形式_某小公司RESTful、共用接口、前后端分离、接口约定的实践

    点击上方"后端技术精选",选择"置顶公众号" 技术文章第一时间送达! 作者:邵磊 juejin.im/post/59eafab36fb9a045076eccc3 ...

  2. 接口入参形式_花椒测试平台 接口篇

    背景 先来说说花椒测试平台的由来: 目的1,降低接口测试对测试人员代码能力的要求.测试人员只需要知道接口的url,请求参数,以什么样的格式传个服务端,接口的响应数据里需要验证哪个字段的值即可进行测试, ...

  3. python requests库api_Python+requests库发送接口入参为xml格式的接口请求

    一)接口入参准备: 入参: <?xml version="1.0" encoding = "UTF-8"?> duoceshi 123456 DwO ...

  4. 【Lilishop商城】No4-6.业务逻辑的代码开发,涉及到:接口入参、出参开发逻辑,及POJO的各种总结

     仅涉及后端,全部目录看顶部专栏,代码.文档.接口路径在: [Lilishop商城]记录一下B2B2C商城系统学习笔记~_清晨敲代码的博客-CSDN博客 全篇会结合业务介绍重点设计逻辑,其中重点包括接 ...

  5. Postman 如何处理上一个接口返回值作为下一个接口入参?

    今天做接口测试,有一个接口的参数是一个校验 token,会实时更新,开发提供了一个单独返回实时 token 的接口,所以就需要在功能接口使用时调用 token 接口的返回值,作为功能接口的参数来使用. ...

  6. 接口入参形式_极光小课堂|手把手教你做接口测试

    接口测试是项目测试过程中非常重要的一环,测试的对象是接口,所以提早介入测试,对代码逻辑进行全面验证,就会更早的发现程序的问题.同时,接口测试比UI测试效率更高,并且更容易验证极端和异常的情况. 那么什 ...

  7. Java接口入参和出参规范建议

    把最近项目中遇到的问题跟大家分享下:最近做了一个项目,后端接口写好后和pc端vue联调完毕,业务还需要和App端[ios,andro]对接,问题来了,后端接口中的入参和出参都是Java数据类型[Dat ...

  8. java对外接口 入参实体命名_支付中心接口设计之参数命名

    目前,java版支付中心处在研发阶段.下午,特有钻研精神的云龙同学饶有兴趣的问我"战哥,你觉得表字段用哪种命名方式比较好呢?" 所用的db是mysql,他是想征求一下我的看法,是用 ...

  9. 大厂对外提供的API接口入参命名规范

    最近查阅百度API接口时,发现接口文档中,参数明文居然是下划线格式,很疑惑.进一步查阅了 阿里开发平台.腾讯微信开发者平台, 对外api接口都是下划线命名,  为什么? java实体类的属性一般是遵从 ...

最新文章

  1. ORA-4031错误深入解析
  2. 没落的Ubuntu Touch想翻盘:新技术可运行Android应用
  3. luogu P5304 [GXOI/GZOI2019]旅行者
  4. oracle虚拟机字符集,更改虚拟机上的oracle字符集
  5. 4-1:shell编程之编写第一个shell脚本
  6. wp_nav_menu($args)函数说明
  7. 腾讯地图拾取坐标html,腾讯地图Api 实现拾取坐标功能示例
  8. 利用 ILSpy 查看 C# 代码编译及运行真相
  9. 代挂管家易开源7.4+web版
  10. zoom 更改安装位置_如何以Zoom更改会议主持人
  11. 该弱磁算法采用单电流控制策略,额定转速以下采用MTPA控制,额定转速以上采用单电流控制
  12. python将pdf转换图片
  13. vue 时间线组件(时间轴组件)
  14. 中国二维码--汉信码(中国主导的首个二维码码制国际标准「汉信码」ISO/IEC 20830:2021《信息技术 自动识别与数据采集技术 汉信码条码符号规范》)
  15. 批量合并word文档
  16. 次世代建模师电脑里面收藏的素材共享
  17. 跑跑卡丁车蛋白石盒喜当托儿纪念,2022/06/12,22:59:24
  18. iOS 获取 WKWebView 里面图片
  19. 如何利用家里的闲置电脑搭建自己的博客
  20. Vue3给table表格字段,添加超级链接,点击后跳转

热门文章

  1. C++ Opengl 3D世界源码
  2. STL常用的遍历算法
  3. 经典C语言程序100例之十一
  4. 二阶龙格库塔公式推导_DeepFM原理推导
  5. 「Python」pycharm多项目虚拟环境切换
  6. 使用opencv读取图片错误([ WARN:0@13.701] global D:\a\opencv-python\opencv-python\opencv\modules\imgcodecs\..)
  7. 5.贝叶斯算法、单词拼写错误案例
  8. 14_clickhouse,kafka引擎,kafka消息到ClickHouse的MergeTree引擎
  9. springmvc 传递和接收数组参数
  10. 太吾绘卷存档修改2020_太吾绘卷/神级初始存档