web-dev-qa-db-ja.com

Java-ネストされた内部にネストされたGson解析

APIを操作する必要があり、(私が読んだものからの)応答形式は構造が不十分なようです。グーグルグループがやや似たような問題に返信しているのを見つけました ここ ですが、Gson.fromJsonを処理するためのResponseクラスの実装に問題があります。私が見逃している例はありますか?

{

"response":{
    "reference": 1023, 
    "data":{
        "user":{
            "id":"210",
            "firstName":"john",
            "lastName":"smith",
            "email":"[email protected]",
            "phone":"",
            "linkedid":{
                "id":"238"
            }
        }
    }
}

}
24
user375566

JSONオブジェクト{}は、Map<String, Object>またはJavabeanクラスで表すことができます。これは、Javabeanを使用する例です。

public class ResponseData {
    private Response response;
    // +getter+setter

    public static class Response {
        private int reference;
        private Data data;
        // +getters+setters
    }

    public static class Data {
        private User user;
        // +getter+setter
    }

    public static class User {
        private String id;
        private String firstName; 
        private String lastName;
        private String email;
        private String phone;
        private Linkedid linkedid;
        // +getters+setters
    }

    public static class Linkedid {
        private String id;
        // +getter+setter
    }
}

次のように使用します。

ResponseData responseData = new Gson().fromJson(json, ResponseData.class);
44
BalusC