4
我解析有类似这样的响应模板数据解析的子类:使用GSON不同领域
{
response: {
data: {}
}
meta: {
errors: []
success: 1
}
}
对于每一个具体的响应,“数据”字段中填入动态字段,但所有其他键(元等)保持不变。例如:
ClassA的
data: {
foo: ""
}
ClassB的
data: {
bar: 3
}
我怎么可以模拟我的课,用GSON来表示这个数据?目前,我已经有了:
public class BaseResponse {
@SerializedName("meta") public Meta meta;
public class Meta {
@SerializedName("errors") public ArrayList<Error> errors;
@SerializedName("success") public int success;
}
}
public class ClassA extends BaseResponse {
@SerializedName("foo") public String foo;
}
public class ClassB extends BaseResponse {
@SerializedName("bar") public int bar;
}
不幸的是,foo和bar领域解析时返回空值,使用,例如:
Gson.fromJson(jsonString, ClassA.class);
我相信这是由于“foo”和“酒吧“领域是内在的参考。
我不知道很多关于GSON但是当你说,解析返回NULL,究竟是什么jsonString的价值时,你叫'Gson.fromJson(jsonString,ClassA.class);'? – 2013-03-22 19:24:29
对于ClassA的响应它看起来像{ 响应:{ 数据:{FOO: “富”} } 元:{ 错误:[] 成功:1 } } – Rockmaninoff 2013-03-22 19:33:24
对于ClassB的响应它看起来像{响应:{data:{bar:350}} meta:{errors:[] success:1}} – Rockmaninoff 2013-03-22 19:33:50