Jackson, verschieben Sie den dynamischen Eigenschaftswert um eine Stufe nach oben

9

Ich habe Probleme mit der Modellierung von Serverantworten, einige von ihnen sehen so aus:

%Vor%

oder

%Vor%

Es scheint, dass "_embedded" -Eigenschaft nur ein JSON-Objekt hat und dieses Objekt nur eine Eigenschaft (anders benannt) mit tatsächlichen Daten hat.

Ich möchte eine Art generische POJO-Klasse erstellen, um diese Art von Antworten zu unterstützen, etwa:

%Vor%

Wenn 'getEmbedded ()' aufgerufen wird, wird die Liste der Kategorien (oder Episoden oder irgendetwas) zurückgegeben.

Ich arbeite jetzt mit der benutzerdefinierten Deserialisierung, aber ohne großen Erfolg möchte ich die Codebasis minimal halten.

    
outlying 19.12.2014, 12:20
quelle

2 Antworten

0

Lösung, abstrakte POJO-Klasse:

%Vor%

POJO für die tatsächliche Antwort:

%Vor%

Deserializer für JSON in Frage:

%Vor%

}

Es könnte mehr Tweeks erfordern, aber an dieser Stelle funktioniert diese Lösung

    
outlying 19.12.2014, 14:12
quelle
-1

Ich würde das Java 8 Optional -Objekt verwenden, wenn ich das Modell modelliere Objekte. Auf diese Weise erhalten Sie ein flexibles Modell und ein nettes Programmiermodell, z. mit der ifPresent-Methode .

Die Wurzelklasse könnte also wie folgt modelliert werden:

%Vor%

Das Objekt, das den eingebetteten Inhalt (d. h. Kategorie oder Episoden) definiert, könnte wie folgt modelliert werden:

%Vor%

Beim Programmieren in Richtung dieser Objekte könnte das folgende Muster verwendet werden:

%Vor%     
wassgren 21.12.2014 10:58
quelle

Tags und Links