Страницы

Поиск по вопросам

четверг, 9 января 2020 г.

Преобразование JSON в POJO начиная с определенного уровня вложенности

#java #json #gson #pojo


Есть система, отдающая по REST API здоровенный JSON. На нее я воздействовать не могу
ни коем образом.

Из этого огромного JSON-а мне нужна только часть по определенному ключу.

Допустим из этого:

{
 "a":{
      "b":[.....]
     },
 "c":{.....},
 "r":{
     "d":{
          "e":{
               "f":[....],
               "g":[....]
              }
         },
      "m":{......}
   .....
   "z":{....}
}


Мне нужно сделать POJO структуру начиная с r.d.e.

Для того же GSON'а придется создавать как минимум всю ветку, что совершенно излишне
(или я заблуждаюсь?)

Есть ли какие библиотеки, которые можно использовать совместно с okhttp3 и которые
позволяют организовать такое?
    


Ответы

Ответ 1



Можно вручную разбирать весь JSON пока не дойдёте до нужного узла и только его парсить в объект. Типа как-то так: JsonParser parser = new JsonParser(); JsonObject obj = parser.parse(HUGE_JSON_STRING).getAsJsonObject(); String stringToParseNoramlly = obj.get("r").get("d").get("e").getAsString(); EModel eModel = new Gson().fromJson(stringToParseNoramlly, EModel.class);

Комментариев нет:

Отправить комментарий