jackson定义返回属性从下划线改成驼峰命令

在Spring Boot应用中,Jackson的配置是用来控制如何序列化和反序列化JSON数据。从你提供的配置看,问题出现在property-naming-strategy的设置上。

yaml 复制代码
jackson:
  property-naming-strategy: SNAKE_CASE

这个配置指示Jackson在序列化和反序列化时,将所有Java属性名从驼峰命名法(Camel Case)转换为下划线命名法(Snake Case)。因此,如果你有一个Java属性名为userName,在JSON中它会被表示为user_name

如果你希望属性名保持为驼峰命名法不变,你应该移除或更改property-naming-strategy的配置。移除这个配置项或将其设置为LOWER_CAMEL_CASE(这实际上是默认值,表示驼峰命名法)将保持属性名的驼峰式表示,例如:

yaml 复制代码
jackson:
  property-naming-strategy: LOWER_CAMEL_CASE

或者,为了保持属性名的默认行为(即不改变属性名),你可以直接从你的配置文件中移除property-naming-strategy行:

yaml 复制代码
jackson:
  serialization:
    WRITE_DATES_AS_TIMESTAMPS: false
    INDENT_OUTPUT: true
  deserialization:
    FAIL_ON_UNKNOWN_PROPERTIES: false
  default-property-inclusion: non_null

这样,Jackson在序列化和反序列化时将不会改变属性名的命名风格,保持你在Java中定义的驼峰命名法。确保在做出这些更改后重新启动你的应用,以便新的配置生效。

相关推荐
程序员小假7 分钟前
我们来说一下无锁队列 Disruptor 的原理
java·后端
资生算法程序员_畅想家_剑魔21 分钟前
Kotlin常见技术分享-02-相对于Java 的核心优势-协程
java·开发语言·kotlin
ProgramHan25 分钟前
Spring Boot 3.2 新特性:虚拟线程的落地实践
java·jvm·spring boot
nbsaas-boot1 小时前
Go vs Java 的三阶段切换路线图
java·开发语言·golang
毕设源码-钟学长1 小时前
【开题答辩全过程】以 基于Java的慕课点评网站为例,包含答辩的问题和答案
java·开发语言
小北方城市网1 小时前
分布式锁实战指南:从选型到落地,避开 90% 的坑
java·数据库·redis·分布式·python·缓存
深圳佛手2 小时前
使用java,怎么样高效地读取一个大文件(10g以上)?
java·开发语言
sheji34162 小时前
【开题答辩全过程】以 景点移动导游系统的设计与实现为例,包含答辩的问题和答案
java
毕设源码-赖学姐2 小时前
【开题答辩全过程】以 高校失物招领信息管理系统的设计与开发为例,包含答辩的问题和答案
java
xiaolyuh1232 小时前
【XXL-JOB】 GLUE模式 底层实现原理
java·开发语言·前端·python·xxl-job