У меня есть загрузочное приложение Spring, где я использую RestTemplate для вызова Rest API, и я получаю следующий отформатированный ответ JSON:
{
"data": [
{
"id": "1",
"type": "type1",
"config": {
"property1" : "value1",
"property2" : "value2"
}
},
{
"id": "2",
"type": "type2",
"config": {
"property3" : "value3",
"property4" : "value4",
"propArray": [ "element1", "element2"]
}
}
]
}
Отдельные элементы в массиве 'data' имеют несколько различных структур (2примеры выше), где я хотел бы отобразить различные типы классов с отдельными элементами, которые зависят от значения элемента 'type'.
Например, значение 'type1' должно отображаться на объект типа Class 'Type1'и т. д.
У меня есть классы, созданные следующим образом: MyResponse:
public Class MyResponse {
List<Data> data;
..
\\getter and setters
}
Данные:
public Interface Data {}
Тип 1:
public Class Type1 implements Data {
private String property1;
private String property2;
..
\\getter and setters
}
Тип2:
public Class Type1 implements Data {
private String property3;
private String property4;
private List<String> propArray;
..
\\getter and setters
}
Как я могу отобразить выше условной структуры?