Gson反序列化返回所有空值[Java]
我的响应Json格式如下所示Gson反序列化返回所有空值[Java],java,json,serialization,null,gson,Java,Json,Serialization,Null,Gson,我的响应Json格式如下所示 [ { "cpm": "$33.00", "id": 13125, "name": "zemindary, eichwaldite", "startDate": "2018-01-04" }, { "cpm": "$9.00", "id": 652, "name": "polyandrian self-exciter", "startDate": "2018-01-04" } ] 但是
[
{
"cpm": "$33.00",
"id": 13125,
"name": "zemindary, eichwaldite",
"startDate": "2018-01-04"
},
{
"cpm": "$9.00",
"id": 652,
"name": "polyandrian self-exciter",
"startDate": "2018-01-04"
}
]
但是,当我使用Gson反序列化数据时,所有值都为null
下面是我的代码,用于将JSON读取并反序列化到我的对象中
Gson g = new Gson();
BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuilder content = new StringBuilder();
while ((inputLine = in.readLine()) != null ) {
content.append(inputLine);
}
Campaigns[] newCamp = g.fromJson(content.toString(), Campaigns[].class);
for (int i = 0; i < newCamp.length; i++) {
Document doc = Document.createDocument("id", newCamp[i].getId())
.put("cpm", newCamp[i].getCpm())
.put("name", newCamp[i].getName())
.put("startDate", newCamp[i].getStartDate());
collection.insert(doc);
System.out.println(doc);
}
下面是我当前打印数据模型时得到的结果
{id=14789,cpm=null,name=null,startDate=null,_id=20548426011802,_revision=1,_modified=1523897108160}
请仅粘贴相关代码,而不要使用屏幕截图。@ReadyPlayer2已用我的代码更新。由于您的代码不完整,您能否尝试打印
内容。toString()
,并确认结果与您的回答一致?@BilaleChami哇这总是简单的事情。我意识到我为另一个数据模型传递了错误的API调用…我很高兴这有帮助^^祝你好运。
public String startDate;
public String cpm;
public int id;
public String name;
public Campaigns () {
}
public String getStartDate() {
return startDate;
}
public void setStartDate(String startDate) {
this.startDate = startDate;
}
public String getCpm() {
return cpm;
}
public void setCpm(String cpm) {
this.cpm = cpm;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}