1 引入maven jar
注:springBoot项目默认使用jackJson,无需引以下jar
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.9.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.9.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.1</version>
</dependency>
2 自写操作方法
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JavaType;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.util.List;
/**
* json转换工具类
*
* @Title JackJsonUtil.java
* @Description json转换工具类
* @param <T>
*/
public class JackJsonUtil<T> {
/**
* 把Object转json字符串
*
* @Title objectToJson
* @Description 把Object转json字符串
* @param obj
* @return
* @version
*/
public String objectToJson(Object obj) {
try {
ObjectMapper mapper = new ObjectMapper();
return mapper.writeValueAsString(obj);
} catch (JsonProcessingException e) {
e.printStackTrace();
return null;
}
}
/**
* json字符串转换为对象
*
* @Title jsonToObject
* @Description json字符串转换为对象
* @param json
* @param obj
* @return
* @version
*/
public T jsonToObject(String json, Class<T> obj) {
try {
ObjectMapper mapper = new ObjectMapper();
return mapper.readValue(json, obj);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
/**
* json字符串转换为list对象
*
* @Title jsonToList
* @Description json字符串转换为list对象
* @param json
* @param obj
* @return
* @version
*/
public List<T> jsonToList(String json, Class<T> obj) {
try {
ObjectMapper om = new ObjectMapper();
JavaType javaType = om.getTypeFactory().constructParametricType(List.class, obj);
return om.readValue(json, javaType);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
}