Spring
JsonStringToObject
IT Lab
2019. 10. 16. 23:45
jackson-databind
jackson-core
import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
public class JsonUtil {
private static final Logger logger = LoggerFactory.getLogger(JsonUtil.class);
public <T> T converJsonStringToObject(String jsonString, TypeReference<T> type) {
ObjectMapper mapper = new ObjectMapper();
try {
return mapper.readValue(jsonString, type);
} catch (JsonParseException e) {
e.printStackTrace();
logger.debug("fail convert json string to object");
} catch (JsonMappingException e) {
e.printStackTrace();
logger.debug("fail convert json string to object");
} catch (IOException e) {
e.printStackTrace();
logger.debug("fail convert json string to object");
}
return null;
}
}
import com.fasterxml.jackson.core.type.TypeReference;
public class ConvertJsonStringToObject {
public static void main(String[] args) {
JsonUtil jsonUtil = new JsonUtil();
String jsonString = "{\"jsonObject\" : \"test\"}";
JsonObject jsonObject = jsonUtil.converJsonStringToObject(jsonString, new TypeReference<JsonObject>() {});
System.out.println(jsonObject.toString());
}
public static class JsonObject {
String jsonObject;
public String getJsonObject() {
return jsonObject;
}
public void setJsonObject(String jsonObject) {
this.jsonObject = jsonObject;
}
@Override
public String toString() {
return "jsonObject : " + jsonObject;
}
}
}