IT虾米网

Gson使用封装详解

xmjava 2018年06月23日 手机开发 510 0
让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; 
    }

发布评论

分享到:

IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

Android获取手机中外置内存卡、内置内存卡、手机内存路径详解
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。