spring 数据休息与 spring 数据 jpa

spring data rest vs spring data jpa

我看过下面的问题

What are the advantages of using Spring Data REST over Spring Data JPA?

不太符合我的需求。 我的数据库在 MYSQL 上,我选择了 Spring-Data-JPA 实现。 REST 可以给我的所有附加优势有哪些是我在简单的 Spring-Data-JPA 中找不到的? 例如,如果明天,我决定实现一个缓存 b/w 我的业务和数据库模块,在这种情况下我必须编写更少的代码吗? 哪个可以轻松配置?哪个更灵活?如何灵活?

此外,如果我在新应用程序中同时使用 REST 和 JPA,我会违反哪些设计原则?

期待从架构角度的解答。提前致谢。

基本上我觉得你的问题没有说到点子上。我认为您还没有完全找到自己在 spring 项目丛林中的出路 - 所以我试着在这里给出一些方向。

Spring-data-jpa 是 spring 使用 JPA 访问数据的方式。您可以在 spring-data-jpa 之上使用 spring-data-rest 在您的存储库和实体之上创建一个没有代码的 REST-API 层。

而 spring-data-rest 可以为您做的事情真是太神奇了。这是在 JPA 层之上创建 REST API 的最快方法。而且它也是高度可定制的。但我认为它有它的局限性。最重要的弱点是实体和 API 之间的紧密耦合。通常你希望在这些层之间有一点解耦。但它是一款很棒的软件。如果您需要快速并希望编写最少的代码,请使用 spring 数据休息。

spring spring-data-rest 的替代方法是直接使用 spring MVC 自行创建 REST API。 Spring-data-jpa 仍将用于实现数据访问层。 Spring MVC 非常强大,被 spring-data-rest 在后台使用。这使您可以完全控制 REST 层。

我还想提一下 spring HATEOAS - it is just a module on top of spring mvc and it gives you the tools to create a hypermedia driven REST API - so you can go for a maturity level 3 of the Richardson Maturity Model - 它也被 spring-data-rest 内部使用。

寻找 hibernate 框架以轻松管理 Java 与数据库交互的应用程序 https://www.javatpoint.com/hibernate-tutorial