Frühjahr Daten Rest vs Frühjahr Daten jpa

8

Ich habe mir die folgende Frage angesehen

Was sind die? Vorteile der Verwendung von Spring Data REST gegenüber Spring Data JPA?

Es entspricht nicht ganz meinen Bedürfnissen. Meine DB ist auf MYSQL, ich wähle Spring-Data-JPA-Implementierung. Was sind all die zusätzlichen Vorteile, die REST mir geben kann, die ich nicht in einfachen Spring-Data-JPA finden werde? Zum Beispiel wenn ich mich morgen entscheide, einen Cache s / w mein Business- und Datenbank-Modul zu implementieren, in welchem ​​Fall würde ich weniger Code schreiben müssen? Was wäre leicht konfigurierbar? Was wäre flexibler und wie?

Wenn ich sowohl REST als auch JPA in einer neuen Anwendung verwende, welche Konstruktionsprinzipien zerbrich ich dann?

Ich freue mich auf die Antworten aus einer Architekturperspektive. Vielen Dank im Voraus.

    
Dipanshu Verma 29.10.2015, 19:19
quelle

1 Antwort

17

Grundsätzlich denke ich, dass Ihre Frage nicht auf den Punkt kommt. Ich denke du hast dich noch nicht komplett durch den Dschungel des Frühlingsprojekts hindurch gefunden - also versuche ich hier ein wenig Orientierung zu geben.

Spring-data-jpa ist der erste Weg, um mit JPA auf Daten zuzugreifen. Sie könnten spring-data-rest oben auf spring-data-jpa verwenden, um eine REST-API-Ebene ohne Code über Ihren Repositorys und Entitäten zu erstellen.

Und was Frühling-Daten-Erholung für Sie tun kann, ist einfach unglaublich. Dies ist der schnellste Weg, eine REST-API über Ihrer JPA-Ebene zu erstellen. Und es ist auch sehr anpassbar. Aber ich denke, es hat seine Grenzen. Die größte Schwäche ist die enge Kopplung zwischen Entitäten und API. Normalerweise möchten Sie diese Schichten etwas entkoppeln. Aber es ist ein großartiges Stück Software. Wenn Sie schnell sein wollen und die minimale Menge an Code schreiben wollen, gehen Sie zum Frühjahrsdatenrest.

Eine Federalternative zu Federdatenruhe ist spring MVC direkt, um selbst eine REST-API zu erstellen. Spring-Daten-jpa würde immer noch verwendet werden, um die Datenzugriffsschicht zu implementieren. Spring MVC ist sehr leistungsstark und wird von Feder-Daten-Rest unter der Haube verwendet. Dies gibt Ihnen die volle Kontrolle über die REST-Schicht.

Ich möchte auch spring HATEOAS erwähnen - es ist nur ein Modul oben auf Federmvc und es gibt Ihnen die Tools, um eine hypermediale REST-API zu erstellen - so können Sie für einen Reifegrad 3 des Richardson-Reifegradmodells - gehen wird auch von Feder-Daten-Ruhe intern verwendet.

    
Mathias Dpunkt 29.10.2015, 22:00
quelle