我正在使用翻新和Gson转换器.我有两个具有相同结构的JSON,如下所示.
JsON 1
{"message":"ok", "code":200, "result":[{"name":"test" "ID":121 }]}
JsON 2
{"message":"ok", "code":200, "result":[{"first_name":"test" "last_name":"testing2" "mIDdle_name":"test123" }]}
public voID CommonModel { @Serializedname("code") public int code; @Serializedname("message") public String message; @Serializedname("result") public ResultModel result; public voID ResultModel{ public List<JsON1> Json1; public List<JsON2> Json2; }}public voID JsON1 { @Serializedname("ID") public int ID; @Serializedname("name") public String name;}public voID JsON2 { @Serializedname("first_name") public String firstname; @Serializedname("last_name") public String lastname; @Serializedname("mIDdle_name") public String mIDdlename;}
但这不起作用.当我在Jackson尝试相同的概念时,它可以很好地工作.我想将CommonModel重用于Web服务的响应.如果有解决方案,请添加评论
解决方法:
如下创建通用模型
public class Common { @Serializedname("message") private String message; @Serializedname("code") private String code; public String getMessage() { return message; } public String getCode() { return code; }}
为Json One创建以下模型在此类上扩展Common Model
public class JsonOne extends Common { @Serializedname("result") private List<JsonObjectOne> JsonObjectOneList; public List<JsonObjectOne> getJsonObjectOneList() { return JsonObjectOneList; } public voID setJsonObjectOneList(List<JsonObjectOne> JsonObjectOneList) { this.JsonObjectOneList = JsonObjectOneList; }}public class JsonObjectOne { @Serializedname("name") private String name; @Serializedname("ID") private String ID; public String getname() { return name; } public voID setname(String name) { this.name = name; } public String getID() { return ID; } public voID setID(String ID) { this.ID = ID; }}
为Json创建模型两个在此类上扩展Common Model
public class JsonTwo extends Common { @Serializedname("result") private List<JsonObjectTwo> JsonObjectTwoList; public List<JsonObjectTwo> getJsonObjectTwoList() { return JsonObjectTwoList; } public voID setJsonObjectTwoList(List<JsonObjectTwo> JsonObjectTwoList) { this.JsonObjectTwoList = JsonObjectTwoList; }}public class JsonObjectTwo { @Serializedname("first_name") private String firstname; @Serializedname("last_name") private String lastname; @Serializedname("mIDdle_name") private String mIDdlename; public String getFirstname() { return firstname; } public voID setFirstname(String firstname) { this.firstname = firstname; } public String getLastname() { return lastname; } public voID setLastname(String lastname) { this.lastname = lastname; } public String getMIDdlename() { return mIDdlename; } public voID setMIDdlename(String mIDdlename) { this.mIDdlename = mIDdlename; }}
总结 以上是内存溢出为你收集整理的android-使用gson恢复模型的通用结构全部内容,希望文章能够帮你解决android-使用gson恢复模型的通用结构所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)