JsonUtils類的封裝實現Object與json序列化與反序列化
阿新 • • 發佈:2019-02-15
public class JsonUtils { // 定義jackson物件 private static final ObjectMapper MAPPER = new ObjectMapper(); /** * 將物件轉換成json字串。 * <p>Title: pojoToJson</p> * <p>Description: </p> * @param data * @return */ public static String objectToJson(Object data) { try { String string = MAPPER.writeValueAsString(data); return string; } catch (JsonProcessingException e) { e.printStackTrace(); } return null; } /** * 將json結果集轉化為物件 * * @param jsonData json資料 * @param clazz 物件中的object型別 * @return */ public static <T> T jsonToPojo(String jsonData,Class<T> beanType) { try { T t = MAPPER.readValue(jsonData, beanType); return t; } catch (Exception e) { e.printStackTrace(); } return null; } /** * 將json資料轉換成pojo物件list * <p>Title: jsonToList</p> * <p>Description:</p> * @param jsonData * @param beanType * @return */ public static <T> List<T> jsonToList(String jsonData, Class<T> beanType) { JavaType javaType = MAPPER.getTypeFactory().constructParametricType(List.class, beanType); try { List<T> list = MAPPER.readValue(jsonData, javaType); return list; } catch (Exception e) { e.printStackTrace(); } return null; } }