Так что в настоящее время я пытаюсь найти способ (де) сериализовать мои данные, чтобы Карта могла содержать экземпляры Wagon, а не только Component.Есть ли способ сделать это с моей текущей структурой объектов?
class Standplaats {
String id;
Map<String, Trein> treinen;
}
class Trein {
String id;
Map<String, Component> componenten;
}
abstract class Component {
String id;
}
class Wagon extends Component {
int seats;
}
//serializing
Gson gson = new GsonBuilder().setPrettyPrinting().create();
List<Standplaats> list = new ArrayList<>(standplaatsen.size());
standplaatsen.forEach((id, standplaats) -> list.add(standplaats));
String toJson = gson.toJson(list);
//deserializing
Standplaats[] standplaatsen = GSON.fromJson(br, Standplaats[].class);
В настоящее время json выглядит так:
{
"id": "standplaats1",
"treinen": {
"trein1": {
"id": "trein1",
"componenten": {
"wagon1": {
"seats": 20,
"id": "wagon1"
}
}
}
}
}