У меня следующий JSON из некоторого апи апстрима
{
"Id": "",
"Name": "",
"Age": ""
}
И мне нужно сопоставить это выше json с paylaod нисходящего запроса (POJO).
public class Employee
{
@JsonProperty("Id")
private Integer Id;
private User user;
}
public class User {
@JsonProperty("Name")
private String name;
@JsonProperty("Age")
private String age;
}
Сейчас я делаю что-то вроде
Employee employee = new ObjectMapper().treeToValue(JsonNode node,Employee.class);
Но это дает ноль в User Object.
Проблема в том, что json, который мы получаем из апстрима, не может быть изменен. Итак, есть ли способ отобразить поля во вложенный объект Пользователь , не меняя структуру json, полученную из апстрима.
Одним из решений является : сопоставить поля отдельно в объекте User и затем установить его в объекте Employee. Но это неэффективное решение, потому что для нулевых проверок нам нужно было бы выполнять проверки отдельно для объектов User и Employee. Если вложение является сложным, то проверка будет адским тиражом кода.