Gson的使用(一)
Gson是google出品的一款,用于处理Json的工具框架,使用Gson之后可以简化开发,不必像以前那样jsonObject,JsonArray,传来出去。
那么一般怎么用比较方便呢?可以将Gson的解析放在Model层去处理,一般会将需要解析的data封装一层,这里举个一个简单的例子:
public class RespLoginInfoModel {
public LoginUserInfo data;
public static RespLoginInfoModel getFromJson(String json) {
if (json == null) {
return null;
}
Gson gson = new Gson();
RespLoginInfoModel info = null;
try {
info = gson.fromJson(json, RespLoginInfoModel.class);
} catch (JsonSyntaxException jsonSyntaxException) {
}
return info;
}
public static String toJsonString(RespLoginInfoModel info){
if (info == null) {
return null;
}
String js = null;
Gson gson = new Gson();
try {
js = gson.toJson(info);
} catch (JsonSyntaxException jsonSyntaxException) {
}
return js;
}
}
在Model层,我们一般会定义服务端传回来的Json数据的结构,服务端给我们的是什么样的Json串,只要对应解析即可,要注意一点,变量名一定要与服务端传给我们的变量名一一对应。详细的LoginUserInfo 如下:
public class LoginUserInfo {
private String id;
private String user;
private String pass;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getUser() {
return user;
}
public void setUser(String user) {
this.user = user;
}
public String getPass() {
return pass;
}
public void setPass(String pass) {
this.pass = pass;
}
}
简单讲一下插件的配置,AndroidStudio自身已经很强大了,配合各种插件,除了让电脑更卡之外,确实能提高编码的效率。(其实把一些没必要的插件禁用,也能提高软件的运行速度)
设置选择插件选项,我已经安装好了,第一次使用需要下载安装,插件每次有变动,都需要重启AndroidStudio。
之后在新建的Data类里面选择生成
菜单里会多一个新选项:
强需要解析的Json直接输入其中:
插件会帮你分析,如果是合理的Json格式,会提示你哪些需要解析:
轻松搞定,连注释都清晰可见,十分人性化
确实有时候服务端会传回来很长的Json字符串,有时候会套好几层,经常有十几个字段,一不小心就会出错,还好Gson比较包容,匹配不是那么严格,只要不是名字拼写错误,客户端和服务端Json串有差异,它也会忽略。
下一篇再详细讲一下需要注意到的几个地方。