Google的JSON与对象之间互转工具类

226 阅读1分钟

public class GJSON { private static Gson gson = null; //判断gson对象是否存在了,不存在则创建对象 static { if (gson == null) { gson= new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create(); } } //⽆参的私有构造⽅法 private GJSON() { } /**

  • 将对象转成json格式
  • @param object
  • @return String / public static String GsonString(Object object) { String gsonString = null; if (gson != null) { gsonString = gson.toJson(object); } return gsonString; } /*
  • 将json转成特定的cls的对象
  • @param gsonString
  • @param cls
  • @return / public static T GsonToBean(String gsonString, Class cls) { T t = null; if (gson != null) { //传⼊json对象和对象类型,将json转成对象 t = gson.fromJson(gsonString, cls); } return t; } /*
  • json字符串转成list
  • @param gsonString
  • @param cls
  • @return / public static List GsonToList(String gsonString, Class cls) { List list = null; if (gson != null) { //根据泛型返回解析指定的类 型,TypeToken<List>{}.getType()获取返回类型 list = gson.fromJson(gsonString, new TypeToken<List>() { }.getType()); } return list; } /*
  • json字符串转成list中有map的
  • @param gsonString
  • @return / public static 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; } /*
  • json字符串转成map的
  • @param gsonString
  • @return */ public static 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; } }