public class JSONUtils {
public static String parser2json(Object obj) {
Gson gson = new Gson();
return gson.toJson(obj);
}
public static String parserDateBean2json(Object obj) {
GsonBuilder gsonBuilder = new GsonBuilder();
Gson gson = gsonBuilder
.registerTypeAdapter(java.util.Date.class,
new DateSerializerUtils())
.setDateFormat(DateFormat.LONG).create();
return gson.toJson(obj);
}
public static <T> List<T> fromJson(String strjson) {
try {
Gson gs = new Gson();
Type listType = new TypeToken<List<T>>() {
}.getType();
List<T> target2 = gs.fromJson(strjson, listType);
return target2;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
public static <T> T fromJson(String strjson, Class<T> cls) {
try {
Gson gs = new Gson();
T target2 = (T) gs.fromJson(strjson, cls);
return target2;
} catch (Exception e) {
return null;
}
}
public static <T> T fromJson2DateBean(String json, Class<T> cls) {
GsonBuilder gsonBuilder = new GsonBuilder();
Gson gson = gsonBuilder
.registerTypeAdapter(java.util.Date.class,
new DateDeserializerUtils())
.setDateFormat(DateFormat.LONG).create();
return gson.fromJson(json, cls);
}
private static class DateDeserializerUtils implements
JsonDeserializer<java.util.Date> {
@Override
public java.util.Date deserialize(JsonElement json, Type type,
JsonDeserializationContext context) throws JsonParseException {
return new java.util.Date(json.getAsJsonPrimitive().getAsLong());
}
}
private static class DateSerializerUtils implements
JsonSerializer<java.util.Date> {
@Override
public JsonElement serialize(Date date, Type type,
JsonSerializationContext content) {
return new JsonPrimitive(date.getTime());
}
}
}
Gson 解析工具封装
最新推荐文章于 2024-07-17 12:06:02 发布