Gson使用封装详解手机开发

让JSON操作变得简单的 Gson 封装类

import java.util.List; 
import java.util.Map; 
 
import com.google.gson.Gson; 
import com.google.gson.reflect.TypeToken; 
 
 
public class GsonUtil { 
    private static Gson gson = null; 
    static { 
        if (gson == null) { 
            gson = new Gson(); 
        } 
    } 
 
    private GsonUtil() { 
    } 
 
    /** 
     * 转成json 
     *  
     * @param object 
     * @return 
     */ 
    public static String GsonString(Object object) { 
        String gsonString = null; 
        if (gson != null) { 
            gsonString = gson.toJson(object); 
        } 
        return gsonString; 
    } 
 
    /** 
     * 转成bean 
     *  
     * @param gsonString 
     * @param cls 
     * @return 
     */ 
    public static <T> T GsonToBean(String gsonString, Class<T> cls) { 
        T t = null; 
        if (gson != null) { 
            t = gson.fromJson(gsonString, cls); 
        } 
        return t; 
    } 
 
    /** 
     * 转成list 
     *  
     * @param gsonString 
     * @param cls 
     * @return 
     */ 
    public static <T> List<T> GsonToList(String gsonString, Class<T> cls) { 
        List<T> list = null; 
        if (gson != null) { 
            list = gson.fromJson(gsonString, new TypeToken<List<T>>() { 
            }.getType()); 
        } 
        return list; 
    } 
 
    /** 
     * 转成list中有map的 
     *  
     * @param gsonString 
     * @return 
     */ 
    public static <T> List<Map<String, T>> GsonToListMaps(String gsonString) { 
        List<Map<String, T>> list = null; 
        if (gson != null) { 
            list = gson.fromJson(gsonString, 
                    new TypeToken<List<Map<String, T>>>() { 
                    }.getType()); 
        } 
        return list; 
    } 
 
    /** 
     * 转成map的 
     *  
     * @param gsonString 
     * @return 
     */ 
    public static <T> Map<String, T> GsonToMaps(String gsonString) { 
        Map<String, T> map = null; 
        if (gson != null) { 
            map = gson.fromJson(gsonString, new TypeToken<Map<String, T>>() { 
            }.getType()); 
        } 
        return map; 
    }

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/3264.html

(0)
上一篇 2021年7月16日
下一篇 2021年7月16日

相关推荐

发表回复

登录后才能评论