네, 가능하다고 생각합니다 (MappingJacksonHttpMessageConverter 사용).
MappingJacksonHttpMessageConverter
는 두 개의 매개 변수 소요 방법 read()
있다 : 당신은 하나의 JSON 메시지에서 단일 개체를 읽을 수있는이 방법을 Class
및 HttpInputMessage
MappingJacksonHttpMessageConverter converter = new MappingJacksonHttpMessageConverter();
YourClazz obj = (YourClazz) converter.read(YourClazz.class, new MyHttpInputMessage(myJsonString));
,하지만 YourClazz 몇 가지 수집 할 수 있습니다.
다음으로 HttpInputMessage 구현을 직접 작성해야합니다.이 예제에서는 json이 string으로 예상되지만 스트림을 json 파일로 전달할 수 있습니다.
public class MyHttpInputMessage implements HttpInputMessage {
private String jsonString;
public MyHttpInputMessage(String jsonString) {
this.jsonString = jsonString;
}
public HttpHeaders getHeaders() {
// no headers needed
return null;
}
public InputStream getBody() throws IOException {
InputStream is = new ByteArrayInputStream(
jsonString.getBytes("UTF-8"));
return is;
}
}
추신. You can publish your app with database
좋은 답변에 감사드립니다. 이 메서드를 시도했지만 '계속 인스턴스를 deserialize 할 수 없습니다.'예외가 계속 발생했습니다. 공유 할 더 나은 솔루션을 찾았습니다. –