jackson與gson的簡單使用
阿新 • • 發佈:2018-12-05
文章目錄
jackson
package com.zhidianfan.pig.yd.utils;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind. ObjectMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
* JSON工具類
*
* @Author sherry
* @Description
* @Date Create in 2018/8/15
* @Modified By:
*/
public class JsonUtils {
private static final ObjectMapper mapper = new ObjectMapper();
private static Logger logger = LoggerFactory.getLogger(JsonUtils.class);
/**
* 物件轉JSON字串
*
* @param o
* @return
* @throws JsonProcessingException
*/
public static String obj2Json (Object o) {
String jsonStr = null;
try {
jsonStr = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(o);
} catch (JsonProcessingException e) {
logger.error("對{}轉化json失敗", o);
logger.error(e.getMessage(), e);
}
return jsonStr;
}
/**
* JSON字串轉物件
*
* @param str
* @param t
* @param <T>
* @return
*/
public static <T> T jsonStr2Obj(String str, Class<T> t) {
try {
return mapper.readValue(str, t);
} catch (IOException e) {
logger.error(str + "\n轉化成物件失敗");
logger.error(e.getMessage(), e);
}
return null;
}
}
Gson
package org.zln.test.wiremock.support;
import com.google.gson.Gson;
import java.lang.reflect.Type;
/**
* @Author sherry
* @Description
* @Date Create in 2018/9/10
* @Modified By:
*/
public class JsonUtils {
private static final Gson gson = new Gson();
/**
* 物件轉JSON字串
*
* @param o
* @return
*/
public static String obj2Json(Object o) {
return gson.toJson(o);
}
/**
* JSON字串轉物件
*
* @param str
* @param t
* @param <T>
* @return
*/
public static <T> T jsonStr2Obj(String str, Class<T> t) {
return gson.fromJson(str, t);
}
public static <T> T jsonStr2Obj2(String str, Type t) {
return gson.fromJson(str, t);
}
}