Springboot2.x 接口入参下划线转驼峰以及返回参数驼峰转下划线实现
转自: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

步骤二:自定义类AbstractCustomizeResolver

步骤三:自定义类 UnderlineToCamelArgumentResolver

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

步骤五:使用,很简单,在接收参数的对象前加注解
4.完美
地 址 :https://www.cnblogs.com/xiaqiuchu/articles/15091968.html
如果对你有帮助,可以点一下 推荐 或者 关注 吗?会让我的分享变得更有动力~
转载时请带上原文链接,谢谢。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义