Gson将child反序列化为父项中的字符串

时间:2017-02-20 12:09:27

标签: java json serialization gson

我正在尝试反序列化这个json响应:

{  
    "_index":"miracle",
    "_type":"user",
    "_id":"AVpbIYg7NtDacQRf2Gz5",
    "_score":1.0,
    "_source":
    {  
        "username":"andrei23",
        "password":"andrei_23"
    }
}

我尝试过类似的东西,但它不起作用:

public class HitDTO {

    @SerializedName("_id")
    private String id;

    @SerializedName("_source")
    private String source;
}

我可以使用某种注释还是有其他东西?

1 个答案:

答案 0 :(得分:0)

首先,您需要为您的字段创建setter和getter。

然后,封装您的JSON对象。所以编辑你的课程如下:

a < 0

public class HitDTO {

   @SerializedName("_id")
   private String id;

   @SerializedName("_source")
   private HitSourceDTO source;

   // getters and setters
}

最后,添加一个函数来返回_source字段的请求格式:

public class HitSourceDTO {

   @SerializedName("username")
   private String username;

   @SerializedName("password")
   private String password;

   // getters and setters
}

希望它可以帮到你!

编辑:为此我搜索了任何类型的注释,我没有找到完全按照你想要的注释。