记录 java 解析一个json数据

来源:互联网 发布:java concurrentlist 编辑:程序博客网 时间:2024/06/06 00:39
import java.lang.reflect.Type;import java.util.ArrayList;import java.util.Arrays;import java.util.List;import com.google.gson.Gson;import com.google.gson.JsonObject;import com.google.gson.reflect.TypeToken;public class DataFactory{    public static Object getInstanceByJson(Class<?> clazz, String json)    {        Object obj = null;        Gson gson = new Gson();        obj = gson.fromJson(json, clazz);        return obj;    }    /**     * @author I321533     * @param json     * @param clazz     * @return     */    public static <T> List<T> jsonToList(String json, Class<T[]> clazz)    {        Gson gson = new Gson();        T[] array = gson.fromJson(json, clazz);        return Arrays.asList(array);    }    /**     * @param json     * @param clazz     * @return     */    public static <T> ArrayList<T> jsonToArrayList(String json, Class<T> clazz)    {        Type type = new TypeToken<ArrayList<JsonObject>>()        {}.getType();        ArrayList<JsonObject> jsonObjects = new Gson().fromJson(json, type);        ArrayList<T> arrayList = new ArrayList<>();        for (JsonObject jsonObject : jsonObjects)        {            arrayList.add(new Gson().fromJson(jsonObject, clazz));        }        return arrayList;    }}

忘记哪位大哥的文章找不到了,抱歉了,就一个类