1 package com.xxx.common.util; 2 3 import java.util.List; 4 import com.fasterxml.jackson.core.JsonProcessingException; 5 import com.fasterxml.jackson.databind.JavaType; 6 import com.fasterxml.jackson.databind.ObjectMapper; 7 8 public class JSONUtil { 9 10 // 定義jackson對象 11 private static final ObjectMapper mapper = new ObjectMapper(); 12 /** 13 * 將對象轉換成json字符串 14 * @param data 15 * @return 16 */ 17 public static String toJSONString(Object data) { 18 try { 19 String string = mapper.writeValueAsString(data); 20 return string; 21 } catch (JsonProcessingException e) { 22 e.printStackTrace(); 23 } 24 return null; 25 } 26 27 /** 28 * 將json結果集轉化爲對象 29 * @param jsonData 30 * @param beanType 31 * @return 32 */ 33 public static <T> T parseObject(String jsonData, Class<T> beanType) { 34 try { 35 T t = mapper.readValue(jsonData, beanType); 36 return t; 37 } catch (Exception e) { 38 e.printStackTrace(); 39 } 40 return null; 41 } 42 43 /** 44 * 將json數據轉換成list 45 * @param jsonData 46 * @param beanType 47 * @return 48 */ 49 public static <T> List<T> parseArray(String jsonData, Class<T> beanType) { 50 JavaType javaType = mapper.getTypeFactory().constructParametricType(List.class, beanType); 51 try { 52 List<T> list = mapper.readValue(jsonData, javaType); 53 return list; 54 } catch (Exception e) { 55 e.printStackTrace(); 56 } 57 return null; 58 } 59 }