Entitäten in der Rest-API mit Spring zurückgeben

Das Erstellen einer erholsamen API für eine Webanwendung im Frühjahr ist ziemlich einfach. Nehmen wir an, wir haben eine Film-Entität mit einem Namen, einem Jahr, einer Liste von Genres und einer Liste von Schauspielern. Um eine Liste aller Filme im json-Format zurückzugeben, erstellen wir in einigen Controllern lediglich eine Methode, die eine Datenbank abfragt und eine Liste als Body von ResponseEntity zurückgibt. Der Frühling wird es magisch serialisieren und alles funktioniert großartig :)

Aber was ist, wenn ich in einigen Fällen möchte, dass die Liste der Schauspieler in einem Film serialisiert wird und nicht in einem anderen? In einem anderen Fall muss ich neben den Feldern der Filmklasse für jeden Film in der Liste einige andere Eigenschaften hinzufügen. Welche Werte werden dynamisch generiert?

Meine aktuelle Lösung besteht darin, @JsonIgnore für einige Felder zu verwenden oder eine MovieResponse-Klasse mit Feldern wie in Movie-Klasse und zusätzlichen erforderlichen Feldern zu erstellen und jedes Mal von Movie in MovieResponse-Klasse zu konvertieren.

Gibt es einen besseren Weg, dies zu tun?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage