gpt4 book ai didi

Spring + hibernate 与 Spring Data JPA : Are they different?

转载 作者:IT老高 更新时间:2023-10-28 13:04:07 26 4
gpt4 key购买 nike

虽然不是新手,但我正在尝试学习 Spring 框架(再次!)以确保我真正理解这一点。我对核心 Spring (DI) 有很好的想法。现在,我专注于数据层。

我遇到过“Spring 和 Hibernate”这个词。正如我可以解释的那样,这意味着使用带有 Hibernate 的 Spring Framework 作为 ORM 工具/JPA 提供程序。

现在我遇到了“Spring Data JPA”。我澄清了关于 Spring Data JPA 的 SO,它是 JPA 之上的一个抽象层(并且在 Spring Data JPA 的底层使用 Hibernate 或任何其他 JPA 提供程序)。

现在这些术语是一样的吗?即“Spring + hibernate”与“Spring Data JPA”是否相同。如果不是,那么有什么区别/相似之处?

我真的对这么多看似相似但可能不同的术语/陈述(如上)感到困惑。

最佳答案

正如您所说,Spring-data-jpa 提供的不仅仅是经典的 Spring-JPA 集成。通过 JPA/Hibernate 集成,您主要获得

  • 使用 JPA/Hibernate 事务的声明式事务管理
  • 异常翻译
  • 将 JPA EntityManager 或 Hibernate SessionFactory 作为可注入(inject) bean

使用 Spring-data-jpa,您可以获得所有这些,以及(除其他外)

  • 仅接口(interface)存储库,使用方法名称自动推断查询
  • @Query 注解定义接口(interface)方法应该返回的查询
  • 自动处理可分页查询
  • 标准 crud 存储库的基类

这只是一个小小的介绍。如需更多帮助,请阅读文档。

关于Spring + hibernate 与 Spring Data JPA : Are they different?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37012437/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com