【问题标题】:Jackson Json Wrap on field levelJackson Json Wrap 现场级别
【发布时间】:2021-06-21 17:27:32
【问题描述】:

如果我想包装单个字段,是否可以使用注释?

假设我有这门课

class A {
   int field1;
   String field2;
}

我想用另一个父级包裹field2,所以当它序列化时会是这样的

{
   "field1": 77,
   "parent": {
       "field2": "Success"
   }
}

目前我有两个解决方案,使用 Getter 和返回映射,或者为 field2 创建一个新类,但是我有很多字段需要这种包装,所以如果有更简单的解决方案,比如使用注释,我想利用它。

【问题讨论】:

标签: java json jackson


【解决方案1】:

您正在寻找的序列化似乎与您的类 A 的结构不匹配。如何在类 A 上放置一个名为“parent”的字段,它是“B”的一个实例?

class A {
   int field1;
   B parent;
}

class B {
  String field2;
}

【讨论】:

  • 这是一个解决方案,虽然我有大约 20 个字段需要此更改,因此创建 20 个类只是为了获得此结果似乎过多
  • 也许对您收到的 JSON 输入进行更多说明?每个父母有二十个不同的名字吗?父名称是否无关紧要,因为每个包装字段都有不同的名称?也许最好的解决方案是您只需将 String 解析为 JsonObject 然后直接遍历字段?
猜你喜欢
  • 2020-03-20
  • 2014-01-11
  • 1970-01-01
  • 1970-01-01
  • 2012-04-28
  • 1970-01-01
  • 1970-01-01
  • 2018-03-21
  • 2020-12-03
相关资源
最近更新 更多