Spring Data REST So fügen Sie eingebettete Ressourcen inline hinzu
Ich verwende Spring Data REST und Hateoas in Kombination mit dem HAL-Browser. Dies funktioniert einwandfrei, aber jetzt möchte ich einen JSON-Dump einer bestimmten Entität mit (einer Reihe von) zugeordneten Objekten erstellen. Ich benutzte@Projection
aber dann steckte ich wieder fest.
FYI: Das normale Verhalten (mit eingebetteten und Links usw.) sollte neben dem neuen Endpunkt (ohne eingebettete und Links) bleiben.
Um mein Problem / meine Frage weiter zu veranschaulichen:
class Person {
String name;
List<Company> companies;
}
class Company {
String name;
Address address;
}
class Address {
String street;
}
Nun möchte ich so etwas sehen:
{
"name": "John",
"companies": [
{
"name": "Stackoverflow",
"address": {"street": "Highway blvd."}
},
{
"name": "Oracle",
"address": {"street": "Main rd."}
}
]
}
Während ich das bekomme:
{
"name": "John",
"_links": {
"self": {"href": "http...."},
"companies": {"href": "http ..."}
},
}
Siehe auch:http: //docs.spring.io/spring-data/rest/docs/current/reference/html/#projections-excerpt
In meinem Beispiel habe ich zwei Schwierigkeiten vorgestellt: Listen (Firmen) und mehrere Ebenen: Person-> Firma-> Adresse. Beide müssen funktionieren (wahrscheinlich 5 Ebenen, von denen einige 'viele' Beziehungen haben).