복잡한 시나리오에서 JSON 데이터를 MyRequest<를 예상하는 일반 메서드로 역직렬화하려고 합니다. ;T> 유형. 그러나 Jackson은 Java의 유형 삭제로 인해 일반 유형 T가 런타임에 유지되지 않는 문제에 직면합니다. 결과적으로 Jackson은 중첩된 MyRequest
이 문제를 해결하고 T로 반환될 것으로 예상되는 유형을 지정하려면 Jackson에게 명시적인 정보를 입력합니다. 이는 getTypeFactory() 및 constructorCollectionType() 메소드를 사용하여 JavaType 객체를 생성하여 달성할 수 있습니다.
<code class="java">JavaType type = mapper.getTypeFactory() .constructCollectionType(List.class, Foo.class);</code>
List.class를 역직렬화하려는 목록 유형(예: List
JavaType 객체가 있으면 이를 사용하여 JSON 데이터를 예상 일반 유형으로 역직렬화할 수 있습니다.
<code class="java">List<Foo> list = mapper.readValue(new File("input.json"), type);</code>
Jackson에게 이 명시적인 유형 정보를 제공하면 중첩된 MyRequest
위 내용은 일반 유형의 역직렬화 중 유형 삭제를 해결하기 위해 Jackson을 어떻게 사용할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!