내가 잭슨이 라이브러리를 사용하고 내가처럼 보이는 JSON 응답을 읽기 위해 노력하고 있어요에 반대합니다 :사용 잭슨은 JSON 문자열을 역 직렬화하거나 문자열 필드
{ "value":"Hello" }
값이 비어, JSON 응답 외모를 같은 :
내 모델 POJO 클래스는이public class Hello {
private String value;
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}
문제 난 모양
{ "value":{} }
{{} 값}, 잭슨이 개체를 읽으려고하지만, 내 모델 클래스 필드는 문자열입니다, 그래서 예외가 발생합니다 :
JsonMappingException: Can not deserialize instance of java.lang.String out of START_OBJECT token.
내 질문이 얼마나 잭슨이 성공적으로 할 수 있습니다를 응답이 보이는 때이야 응답은 다음과 같습니다 경우
{"value":"something"}
동시에 : 같이 JSONs 읽어 { "값을": {}} (나 빈 응답), 내 안녕하세요 모델 클래스의 값 필드에 null을 전달합니다.
내가 JSON 문자열을 읽으려면 아래의 코드를 사용하고 있습니다 :
String myJsonAsString = "{...}";
ObjectMapper mapper = new ObjectMapper();
mapper.readValue(myJsonAsString , Hello.class);
추한 디자인 대신이 JSON을 생성하는 부분을 고칠 수있는 방법이 없습니까? –
아니요, 불행히도 없습니다. API는 내 것이 아닙니다. 나는 단지 고객이다. –
부적절합니다. 적절한 출력은 필드를 생략하거나 null로 설정합니다. – john16384