Java Gson反序列化json,其中包含可以是字符串或对象的参数

Java Gson反序列化json,其中包含可以是字符串或对象的参数,java,json,string,gson,deserialization,Java,Json,String,Gson,Deserialization,我有一个Json,如下所示 { "myItemArray": [ { "id": "c8c1", "price": 18, "display": { "inneritemName1": "innerItemValue1", "inneritemName2": "innerItemValue2", "i

我有一个Json,如下所示

{
    "myItemArray": [
        {
            "id": "c8c1", 
            "price": 18, 
            "display": {
                "inneritemName1": "innerItemValue1", 
                "inneritemName2": "innerItemValue2",
                "inneritemName3": "innerItemValue3"
            }
        }, 
        {
            "id": "cac1", 
            "price": 2, 
            "display": "Lemonate"
        }
    ]
}
正如您所看到的,我的数组中的项有一个名为“display”的参数,它可以是String或Object。如何使用Gson反序列化这个json


我不想手动反序列化此字符串,还有其他方法吗?

您可以使用Gson,但必须构建一个类,将每个Json属性放入Java类中的relevant属性中


我非常推荐使用Gson和库,您只需要设置Java类,它负责映射和解析。

您可以使用Gson,但必须构建一个类,将每个Json属性放入Java类中的相关属性


我非常推荐Java和库,您只需要设置Java类,它负责映射和解析。

您打算将其反序列化为什么结构?Display需要一个类型,所以您是要将其作为通用对象类型,还是要将数据转换为类似的类型?换句话说,您希望显示的结果是什么?您可能需要该字段的自定义反序列化程序您打算将其反序列化为什么结构?Display需要一个类型,所以您是要将其作为通用对象类型,还是要将数据转换为类似的类型?换句话说,您希望显示的结果是什么?您可能需要该字段的自定义反序列化器您建议如何处理OP描述的特定问题?选中此项,对于这种映射,他必须创建自己的反序列化器,并在如何区分它们之间的问题上从类中选出合适的旁观者。这是一个关于如何处理Jackson的示例,您建议如何处理OP描述的特定问题?选中此项,对于这种映射,他必须创建自己的反序列化器,并在如何区分它们之间的问题上从类中选出合适的旁观者。这是一个关于如何与Jackson合作的示例