JSON 嵌套对象和数组的映射器

JSON mapper for Nested objects and arrays

我有一个来自网络服务响应的 Json 字符串。

此 JSON 字符串包含嵌套对象和数组。我尝试使用 jackson 和 GSON 将其映射到 java 个对象,但在这两种情况下我都遇到了错误。

这是我的 Json:

{"events": [{
    "Code": "4", 
    "eventDataSet": {
        "Bar":{"EvDesc":"WRAP_UP"},
        "Foo":{
            "AcssId":"**1234",
            "EvCSId":"12‌​34",
            "custId":"3501234","Recid":"bknz"
        }
    }
]}

我想从此 json 中提取 Bar 和 Foo 对象的值。

请建议我如何映射此类响应。

GsonJackson 等库在反序列化有效的 JSON 字符串时应该没有任何问题。

问题很可能出在您用来反序列化输入的对象类型上。

您可以使用 this site 从您的 JSON 响应之一生成 POJO。输入您的 JSON 和 select JSON 作为源类型。

然后,Gson:

Gson gson = new GsonBuilder().create();
Person p = gson.fromJson(inputString, Example.class);

您的 json 似乎有问题。这里修改了 json,我可以使用 jackson 将它转换为对象。

{
    "events": [{
        "code": "4",
        "eventDataSet": {
            "bar": {
                "evDesc": "WRAP_UP"
            },
            "foo": {
                "acssId": "**1234",
                "evCSId": "12??34",
                "custId": "3501234",
                "recid": "bknz"
            }
        }
    }]
}