Używam Spring Data REST i Hateoas w połączeniu z przeglądarką HAL. Działa to doskonale, ale teraz chciałbym wykonać zrzut JSON konkretnej jednostki z (zestawem) powiązanych obiektów. Użyłem @Projection
, ale potem utknąłem ponownie.Spring Data REST Jak dodać wbudowane zasoby inline
FYI: Normalne zachowanie (z osadzonymi i linkami itp.) Powinno pozostać poza nowym punktem końcowym (bez osadzonych i linków).
Aby dodatkowo zilustrować mój problem/pytanie:
class Person {
String name;
List<Company> companies;
}
class Company {
String name;
Address address;
}
class Address {
String street;
}
teraz chciałbym zobaczyć coś takiego:
{
"name": "John",
"companies": [
{
"name": "Stackoverflow",
"address": {"street": "Highway blvd."}
},
{
"name": "Oracle",
"address": {"street": "Main rd."}
}
]
}
Choć dostaję to:
{
"name": "John",
"_links": {
"self": {"href": "http...."},
"companies": {"href": "http ..."}
},
}
Zobacz także: http://docs.spring.io/spring-data/rest/docs/current/reference/html/#projections-excerpts
W moim przykładzie przedstawiłem dwie trudności, które mam: Listy (firmy) i wiele poziomów: osoba-> firma-> adres. Oba są wymagane do pracy (prawdopodobnie 5 poziomów, z których niektóre mają "wiele" relacji).
można przez nie przy użyciu Wiosna danych spoczynku.Spring Data Rest przyjmuje opinię poglądową na temat prawidłowego odpoczynku, włączając w to linki do relacji zamiast do pełnego podmiotu. –
Dziękuję Deinum. Spring Data Rest znajduje się w ścieżce klas i musi tam pozostać. Czy komentarz jest nadal aktualny? – codesmith