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中定义的驼峰命名法。确保在做出这些更改后重新启动你的应用,以便新的配置生效。

相关推荐
李慕婉学姐3 小时前
【开题答辩过程】以《基于JAVA的校园即时配送系统的设计与实现》为例,不知道这个选题怎么做的,不知道这个选题怎么开题答辩的可以进来看看
java·开发语言·数据库
奋进的芋圆4 小时前
Java 延时任务实现方案详解(适用于 Spring Boot 3)
java·spring boot·redis·rabbitmq
sxlishaobin5 小时前
设计模式之桥接模式
java·设计模式·桥接模式
model20055 小时前
alibaba linux3 系统盘网站迁移数据盘
java·服务器·前端
荒诞硬汉5 小时前
JavaBean相关补充
java·开发语言
提笔忘字的帝国5 小时前
【教程】macOS 如何完全卸载 Java 开发环境
java·开发语言·macos
2501_941882485 小时前
从灰度发布到流量切分的互联网工程语法控制与多语言实现实践思路随笔分享
java·开发语言
華勳全栈6 小时前
两天开发完成智能体平台
java·spring·go
alonewolf_996 小时前
Spring MVC重点功能底层源码深度解析
java·spring·mvc
沛沛老爹6 小时前
Java泛型擦除:原理、实践与应对策略
java·开发语言·人工智能·企业开发·发展趋势·技术原理