Hibernate和Spring Data JPA有什么区别?

栏目: Hibernate · 发布时间: 7年前

内容简介:让我们首先了解Java Persistence API提供了一个规范,用于将数据从Java对象持久化,读取和管理到数据库中的关系表。

让我们首先了解 JPAHibernateSpring Data JPA 的定义,这样就可以很容易地讨论Hibernate和Spring Data JPA之间的区别。

什么是Java Persistence API?

Java Persistence API提供了一个规范,用于将数据从 Java 对象持久化,读取和管理到数据库中的关系表。

什么是Hibernate框架?

Hibernate是Java环境的对象关系映射解决方案。对象关系映射或ORM是将应用程序域模型对象映射到关系数据库表的编程技术。Hibernate是一个基于Java的ORM工具,它提供了一个框架,用于将应用程序域对象映射到关系数据库表,反之亦然。

Hibernate提供了Java Persistence API的参考实现,使其成为具有松散耦合优势的ORM工具的绝佳选择。

JPA是一个规范,Hibernate是一个JPA提供者或实现。

什么是Spring Data JPA?

Spring Data是 Spring Framework 的一部分  。Spring Data存储库抽象的目标是显着减少为各种持久性存储实现数据访问层所需的样板代码量。

Spring Data JPA不是JPA提供者。它是一个库/框架,它在我们的JPA提供程序(如Hibernate)的顶部添加了一个额外的抽象层。

现在,您熟悉JPA,Hibernate和Spring Data JPA的定义。现在,让我们讨论Hibernate和Spring Data JPA之间的区别。

Hibernate和Spring Data JPA有什么区别?

Hibernate是一个JPA实现,而Spring Data JPA是一个JPA数据访问抽象。Spring Data提供了GenericDao 自定义实现的解决方案  。它还可以通过方法名称约定代表您生成JPA查询。

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

Spring Data JPA不是一个实现或JPA提供程序,它只是一个抽象,用于显着减少为各种持久性存储实现数据访问层所需的样板代码量。

Hibernate提供了Java Persistence API的参考实现,使其成为具有松散耦合优势的ORM工具的绝佳选择。

请记住,Spring Data JPA始终需要JPA提供程序,如 Hibernate 或Eclipse Link。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Hacking

Hacking

Jon Erickson / No Starch Press / 2008-2-4 / USD 49.95

While other books merely show how to run existing exploits, Hacking: The Art of Exploitation broke ground as the first book to explain how hacking and software exploits work and how readers could deve......一起来看看 《Hacking》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具