如何创建POJO来处理具有元素数组和元素数组数组的JSON数据

问题描述 投票:1回答:1

我们有一个场景,其中JSON具有一个字段的2个不同值。我们想使用相同的POJO解析所有json。在下面,您可以找到这2个JSON有效负载:

{
  "values": [
    [
      {
        "name": "item_name",
        "value": "pool"
      }
    ],
    [
      {
        "name": "item_name",
        "value": "Mob"
      }
    ]
  ],
  "name": "lines"
}

和:

{
  "values": [
    {
      "name": "pack",
      "value": "Enter, HD"
    }
  ],
  "name": "lines"
}

当前,如果我如下指定POJO,则第二个json引发异常

class ValuesModel extends Serializable {

  @BeanProperty
  var values: List[List[ValueModel]] = _

}

如果我按如下所示指定POJO,则第一个json引发异常

class ValuesModel extends Serializable {

  @BeanProperty
  var values: List[ValueModel] = _

}

是否有一种方法可以创建一个POJO来将两个json一起解析,而不是捕获异常并使用另一种模式进行解析?我正在使用Jackson进行解析。

java json scala jackson jackson2
1个回答
2
投票

在这种情况下,您要处理多个JSON模式并能够将其反序列化为相同的POJO模型,则需要实现自定义反序列化器并实现所有所需的方案。

© www.soinside.com 2019 - 2024. All rights reserved.