import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
import java.util.List;
import java.util.Map;
public class JsonUtils {
private static ObjectMapper objectMapper = new ObjectMapper();
public static String object2Json(Object obj){
if (obj == null) {
return "";
}
String result = null;
try {
result = objectMapper.writeValueAsString(obj);
} catch (IOException e) {
e.printStackTrace();
}
return result;
}
public static Map<?, ?> jsonToMap(String json){
return json2Object(json, Map.class);
}
public static <T> T json2Object(String json, Class<T> cls){
T result = null;
try {
result = objectMapper.readValue(json, cls);
} catch (IOException e) {
e.printStackTrace();
}
return result;
}
public static <T> T conveterObject(Object srcObject, Class<T> destObjectType) {
String jsonContent = object2Json(srcObject);
return json2Object(jsonContent, destObjectType);
}
public static <T> List<T> fromJsonList(String json, Class<T> clazz) throws IOException {
return objectMapper.readValue(json,objectMapper.getTypeFactory().constructCollectionType(List.class, clazz));
}
}
<!-- JSON版本管理 -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.4.2</version>
</dependency>