Hibernate 和Spring Data JPA有什么区别

在本教程中,我们将了解Hibernate 和Spring Data JPA之间的区别。

Hibernate 是 JPA 的实现,而Spring Data JPA 是 JPA 的数据访问抽象。Spring Data JPA 在没有 JPA 提供程序的情况下无法工作。

Spring Data 为DDD存储库模式或旧版通用Ao自定义实现提供了解决方案。它还可以通过方法名称约定代表您生成 JPA 查询。

使用Spring Data ,您可以使用Hibernate 、EclipseLink 或任何其他 JPA 提供程序。使用 Spring 或 Java EE 的一个非常有趣的好处是,您可以使用@Transactional注释以声明方式控制事务边界。

Spring JDBC 的量级要轻量得多,它适用于本机查询,如果您只打算单独使用 JDBC,那么您最好使用Spring JDBC 来处理 JDBC 的详细程度。

因此,Hibernate 和Spring Data是互补的,而不是竞争对手。

我们在这里使用3种不同的东西:

  • JPA :Java持久性API,它提供了从java对象到数据库中关系的持久化,读取,管理数据的规范。
  • Hibernate:有各种实现jpa的提供程序。冬眠就是其中之一。所以我们还有其他提供商。但是,如果将jpa与弹簧一起使用,则可以在将来切换到不同的提供商。
  • Spring Data JPA :这是JPA之上的另一层,弹簧提供使您的生活轻松。

因此,让我们了解Spring Data jpa和Spring+Hibernate 的工作原理 -

Spring Data JPA:

假设您正在为您的应用程序使用Spring + Hibernate。现在你需要有 dao 接口和实现,你将使用休眠的会话工厂编写 crud 操作。假设您正在为 Employee 类编写 dao 类,明天在您的应用程序中,您可能需要为任何其他实体编写类似的 crud 操作。所以我们可以在这里看到很多样板代码。

现在,Spring Data jpa允许我们通过扩展其存储库(crudrepository,jparepository)来定义dao接口,因此它在运行时为您提供dao实现。你不再需要编写 dao 实现。这就是春季数据jpa如何让您的生活变得轻松。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值