|
|
@ -4,6 +4,7 @@ import java.io.InputStream;
|
|
|
|
import java.util.Set;
|
|
|
|
import java.util.Set;
|
|
|
|
|
|
|
|
|
|
|
|
import com.fasterxml.jackson.core.JsonParser.Feature;
|
|
|
|
import com.fasterxml.jackson.core.JsonParser.Feature;
|
|
|
|
|
|
|
|
import com.fasterxml.jackson.core.type.TypeReference;
|
|
|
|
import com.fasterxml.jackson.databind.DeserializationFeature;
|
|
|
|
import com.fasterxml.jackson.databind.DeserializationFeature;
|
|
|
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
|
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
|
|
import com.fasterxml.jackson.databind.ObjectWriter;
|
|
|
|
import com.fasterxml.jackson.databind.ObjectWriter;
|
|
|
@ -64,6 +65,14 @@ public class JSON extends AbstractComponent {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public <T> T parse(String json, TypeReference<T> typeRef) {
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
|
|
|
return getObjectMapper().readValue(json, typeRef);
|
|
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
|
|
|
throw runtimeException(e);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**input의 내용을 파싱하여 주어진 클래스의 객체로 변환한다.
|
|
|
|
/**input의 내용을 파싱하여 주어진 클래스의 객체로 변환한다.
|
|
|
|
* @param <T> 클래스 유형
|
|
|
|
* @param <T> 클래스 유형
|
|
|
|
* @param input JSON input
|
|
|
|
* @param input JSON input
|
|
|
@ -78,6 +87,14 @@ public class JSON extends AbstractComponent {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public <T> T parse(InputStream input, TypeReference<T> typeRef) {
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
|
|
|
return getObjectMapper().readValue(input, typeRef);
|
|
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
|
|
|
throw runtimeException(e);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**주어진 객체를 JSON 문자열로 변환한다.
|
|
|
|
/**주어진 객체를 JSON 문자열로 변환한다.
|
|
|
|
* @param obj 객체
|
|
|
|
* @param obj 객체
|
|
|
|
* @return 객체를 변환한 JSON 문자열
|
|
|
|
* @return 객체를 변환한 JSON 문자열
|
|
|
|