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).

Antworten auf die Frage(6)

Ihre Antwort auf die Frage