我有这个Json结构,我需要获取“myId”,“name”,“adress1”和“city”的信息。
{
"InformationResponse":{
"Id":"122212",
"customerSessionId":"007",
"Summary":{
"myId":1234567,
"name":"Casino",
"address1":"13 Street",
"city":"Las Vegas",
},
...
我正在使用Gson(Java)。 我创建了3个Class(InformationResponse,Summary和Main)
public class Summary {
private String myId;
private String name;
private String city;
public String getMyId() {
return myId;
}
public void setMyId(String myId) {
this.myId= myId;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
@Override
public String toString(){
return getMyId() + ", "+getName()+", "+getCity();
}
}
MyObject.class
public class MyObject{
private Summary summary;
public Summary getSummary() {
return address;
}
@Override
public String toString(){
sb.append("Summary="+getSummary()+"\n");
return sb.toString();
}
}
在Main中,我可以看到我的Json文件,我正在这样做:
// Get Gson object
Gson gson = new GsonBuilder().setPrettyPrinting().create();
// parse json string to object
MyObject myobject1 = gson.fromJson(json, MyObject.class);
但我每次都有空。
感谢您的帮助!
Jean M。
答案 0 :(得分:0)
试试这个@SerializedName(“Id”) private String myId;
答案 1 :(得分:-2)
Gson需要默认的无参数构造函数:
https://sites.google.com/site/gson/gson-user-guide#TOC-Object-Examples
尝试在Summary和MyObject类中添加public no-args构造函数。
public Summary() {}
public MyObject() {}