Lets sagen, dass ich die folgenden Klassen:Gson hinzufügen automatisch classname
public class Dog {
public String name = "Edvard";
}
public class Animal {
public Dog madDog = new Dog();
}
Wenn ich laufe dies ein Gson Trog wird es serialisiert, wie folgend:
GSon gson = new GSon();
String json = gson.toJson(new Animal())
result:
{
"madDog" : {
"name":"Edvard"
}
}
so weit so gut, aber ich würde gerne den className für alle Klassen automatisch mit Gson hinzugefügt haben, so bekomme ich das folgende Ergebnis:
Weiß jemand, ob dies mit einer Art Abfangjäger oder etwas mit Gson möglich ist?
Dies gilt nicht wirklich das Problem lösen nicht wahr? Ich möchte Standard-Serialisierung für alle Felder verwenden, aber ein einzelnes zusätzliches Feld für den Klassennamen hinzufügen - es fühlt sich an wie ein wirklich normaler Anwendungsfall. – mjaggard
Das Problem ist, dass Sie der normalen Serialisierung ein einzelnes Feld hinzufügen möchten, und meine Lösung löst dieses Problem (insbesondere ohne zusätzliche Abhängigkeiten). Ich verstehe, dass es eine Art von Schmerz ist, aber out of the box gab es keine Möglichkeit, diese einfache Aufgabe zu erreichen, ohne benutzerdefinierte Serialisierer zu erstellen und zu registrieren. –