如何不仅从根级别获取属性

时间:2018-09-05 20:47:56

标签: java json jackson

大家好,我在使用Jackson库解析JSON时遇到了一些麻烦

{
    "userName": "blablabla@gmail.com",
        "ID": {
            "uniqueID": "1234567"
        }
}

这是json的一部分,我的模型是:

public class UserIdAndMail {
@JsonProperty("uniqueID")
private String id;


@JsonProperty("userName")
private String mail;

public UserIdAndMail(String id, String mail) {
    this.id = id;
    this.mail = mail;
}

public UserIdAndMail() {}

public String getId() {
    return id;
}

public void setId(String id) {
    this.id = id;
}

public String getMail() {
    return mail;
}

public void setMail(String mail) {
    this.mail = mail;
}
}
当我尝试解析'uniqueID'成为对象时,

null变成JSON的值。 而且我不知道如何在不创建其他类"ID"的情况下获取该字段。可以为这个任务找到更简单的解决方案吗?

1 个答案:

答案 0 :(得分:0)

可能的副本-How to map a nested value to a property using Jackson annotations?

String id;

@JsonProperty("ID")
private void unpackNameFromNestedObject(Map<String, String> id) {
    this.id= id.get("uniqueID");
}