Json отображение нестандартного интерфейса - PullRequest
0 голосов
/ 17 июня 2020

Я получил ответ, который представляет собой карту объектов, но все они имеют один и тот же ключ:

{
    "hits": [
    {
      "recipe": {
          "id" : "0",
          "label" : "chicken noodles",
          ...
      },
      "another_field": "value"
    },
     {
      "recipe": {
          "id" : "1",
          "label" : "fried chicken",
          ...
      },
      "another_field": "value"
    },
     { "recipe": {...}, ... }
    ]
}

My Pojo:

public class SearchRecipeResponse {

    private List<RecipeResponse> hits;

    public List<RecipeResponse> getHits() {
        return hits;
    }
}
public class RecipeResponse{
    private String label;
    ...
    getters, etc
}

Результат выглядит как список объектов, но все объекты равны нулю, потому что полезная нагрузка json имеет этот ключевой «рецепт».

Ответы [ 2 ]

0 голосов
/ 17 июня 2020

Я отсортировал это, добавив дополнительное сопоставление к каждому объекту. Мое отображение было неправильным. Спасибо за ответы.

public class SearchRecipeResponse {

    private List<HitResponse> hits;

    public List<HitResponse> getHits() {
        return hits;
    }
}
public class HitResponse{
    private RecipeResponse recipe;
    ...
    getters, etc
}

Для тех, кому не хватает аннотаций Джексона, я не использую их, поскольку имена полей соответствуют свойствам.

0 голосов
/ 17 июня 2020

Вы можете создать POJO для рецепта и использовать его для сопоставления. Хотя не уверен, что это то, что вы хотите сделать, вам нужно расширить свой вопрос, чтобы добавить ясности.

...