Retrofit을 사용하여 REST API를 사용하고 있습니다. JSON 객체를 받아서 인쇄 할 수 있습니다. 동적으로 중첩 된 단순 유형의 Java 객체로 변환하려고합니다.JSON REST에서 단순 유형의 Java 객체를 동적으로 빌드하십시오.
즉 Java 객체가 JSON 객체 (Python의 json.loads와 유사)를 기반으로 동적으로 작성된 중첩 된 Map, Array, String, Int/Double, Boolean 및 null로 구성되기를 원합니다. 나는 이것을 위해 잭슨을 사용하려고 시도하고있다. 여기에 내가 가진 무엇 :
API api = APIHandler.getApiInterface();
api.getFoo(new Callback<Object>() {
@Override
public void success(Object o, Response response) {
Log.i("Tag", "Print JSON " + o.toString());
ObjectMapper mapper = new ObjectMapper();
Map<String, Object> json = mapper.readValue(o, Map.class);
}
@Override
public void failure(RetrofitError error) {
}
});
json으로이 기록하지만 라인 mapper.readValue(o, Map.class);
는 "방법을 확인할 수 없습니다"오류를 제공한다. 반환 유형을 String으로 변경하면 더 많은 문제가 발생합니다.
어떻게해야할까요?
안드로이드가 코어 API를 사용하는 이유는 무엇입니까? http://developer.android.com/reference/org/json/JSONObject.html#JSONObject(java.lang.String) –
여기 좀 비교가 있습니다 : http://java.dzone.com/articles/be-lazy-productive-android – WojciechKo
팁 주셔서 감사합니다. JSONObject는 내가 찾고있는 것에 가깝지만 clunky 같다. 나는 자바에서 JSON을 POJO로 변환해야한다고 생각하기 시작했다. – Calvin