You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java Record序列化与反序列化使用不同字段名的实现方案

Java Record 序列化与反序列化配置不同字段名的解决方案

可以通过Jackson的@JsonAlias注解配合@JsonProperty实现需求,既保留原有的序列化字段名,又支持指定的反序列化别名。

修改后的Record代码

public record TestRecord(@JsonProperty("foo bar") @JsonAlias("fooBar") String fooBar) {}

注解作用说明

  • @JsonProperty("foo bar"):指定序列化时输出的JSON字段名为"foo bar",保持原有输出格式不变。
  • @JsonAlias("fooBar"):为反序列化添加别名,允许Jackson在解析JSON时识别"fooBar"字段,并将其值映射到Record的fooBar组件。

效果验证

  • 序列化时,仍会生成如下JSON:
    {
      "foo bar": "test"
    }
    
  • 反序列化时,以下两种格式的JSON都能被正确解析:
    {
      "foo bar": "test"
    }
    
    {
      "fooBar": "test"
    }
    

内容的提问来源于stack exchange,提问作者maxintos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 09:52:54