杰克逊反序列化json Map - Map <string,map <string,string>&gt; as one Object </string,map <string,string>

时间:2013-02-02 06:13:28

标签: java android jackson

我有以下JSON:

{
    "Live": {
        "Saerro (AU)": {
            "status": "low",
            "age": "00:01:17"
        },
        "Connery (US West)": {
            "status": "medium",
            "age": "00:02:26"
        }
    }
}

因此Map Live的值为Map<String,Map<String,String>>。 我需要将Live反序列化为对象列表,例如

public class Status implements Serializable {
    @JsonProperty
    public String name;
    @JsonProperty
    public String status;
    @JsonProperty
    public String age;
}

是否有注释或我可以使用的东西,以便Map Key和值反序列化为一个对象?

1 个答案:

答案 0 :(得分:1)

您需要编写自定义反序列化程序来处理此问题。 This提供了一个不错的概述,还有很多关于stackoverflow的其他问题,例如here

或者,您可以让Jackson反序列化为Map<String, Map<String, String>>,然后将其后处理为您希望的任何形式。