1、在开发的过程中网络请求json字符串 解析的时候是很烦恼的,如果有一个快捷方便的自动解析工具可以省下不少时间。这里将推荐一款非常好用的插件。
2、
打开File -> Setting ->选择Plugins 然后搜索 GsonFormat 点击安装 然后apply -> ok 重新打开AS就可以使用了。
3、使用的时候还需要几个工具类。
Json.java代码如下
package com.first.mzy.utils;
/**
* @Company: 杭州先手科技有限公司
* @Created: 2017/7/21
* @Description:
* @version:
*/
import java.util.List;
/**
* TODO: json工具类
*
* @author wy
* @date 2018-6-8 下午3:30:24
*/
public abstract class Json {
private static Json json;
Json() {
}
public static Json get() {
if (json == null) {
json = new GsonImpl();
}
return json;
}
public abstract String toJson(Object src);
public abstract <T> T toObject(String json, Class<T> claxx);
public abstract <T> T toObject(byte[] bytes, Class<T> claxx);
public abstract <T> List<T> toList(String json, Class<T> claxx);
}
GsonImpl.java 代码如下
package com.first.mzy.utils;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.List;
/**
* @Company: 杭州先手科技有限公司
* @Created: 2017/7/21
* @Description:
* @version:
*/
public class GsonImpl extends Json {
private Gson gson = new Gson();
@Override
public String toJson(Object src) {
return gson.toJson(src);
}
@Override
public <T> T toObject(String json, Class<T> claxx) {
return gson.fromJson(json, claxx);
}
@Override
public <T> T toObject(byte[] bytes, Class<T> claxx) {
return gson.fromJson(new String(bytes), claxx);
}
@Override
public <T> List<T> toList(String json, Class<T> claxx) {
Type type = new TypeToken<ArrayList<T>>() {}.getType();
List<T> list = gson.fromJson(json, type);
return list;
}
}
4、使用方法
新建一个空的java文件在类中空白处右键选择generate-gsonformat 打开窗口 将服务器返回的json字符串粘贴点击ok就可以自动生成相应的方法。如下图流程
StroeGoodsBean是你自己的bean类
StroeGoodsBean stroeGoodsBean = GsonImpl.get().toObject(response,StroeGoodsBean.class);
这样就可以快速解析json并获取到object对象,使用起来是非常的方便的。