JSON을 반환하는 Api가 있습니다. 응답은 ApiResult라는 객체에 들어갈 수있는 형식으로되어 있으며 Context <T>
과 int 코드가 들어 있습니다.JSON 문자열을 JAVA의 일반 객체로 변환합니다 (GSON 사용)
ApiResult는 일반적인 방식으로 선언됩니다. ApiResult<SomeObject>
ApiResult<T>
에 들어오는 JSON 문자열을 변환하는 얻는 방법을 알고 싶습니다
지금까지 내가 가진 :
Type apiResultType = new TypeToken<ApiResult<T>>() { }.getType();
ApiResult<T> result = gson.fromJson(json, apiResultType);
하지만 여전히 반환이 대신의 LinkedHashMap에 컨텍스트 변환 (나는 그 GSON이 다시 추락하는 것으로 가정한다.)
그래서 내가 T는 귀하의 예제에서 String 형의 것을 가지고 :
어쩌면 이것은 귀하의 경우 GSON와 올바른 방법입니다 . 하지만 String은 없지만 T. 마지막 문장 (과제)은 어떻게 바뀌나요? – Yannis
네,'getGenToken'에서'String.class' 대신'Class'var을 사용할 것으로 가정하고있었습니다. 하지만 어쩌면 그건 당신 사건에 적용되지 않을 수도 있습니다. –
PomPom