我们有一个场景,其中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
进行解析。
在这种情况下,您要处理多个JSON
模式并能够将其反序列化为相同的POJO
模型,则需要实现自定义反序列化器并实现所有所需的方案。