Hibernate和Spring Data JPA有什么区别?

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

内容简介:让我们首先了解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。


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

查看所有标签

猜你喜欢:

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

MATLAB高效编程技巧与应用

MATLAB高效编程技巧与应用

吴鹏 / 北京航空航天大学 / 2010-6 / 39.00元

《MATLAB高效编程技巧与应用:25个案例分析》是作者八年MATLAB使用经验的总结,精心设计的所有案例均来自于国内各大MATLAB技术论坛网友的切身需求,其中不少案例涉及的内容和求解方法在国内现已出版的MATLAB书籍中鲜有介绍。 《MATLAB高效编程技巧与应用:25个案例分析》首先针对MATLAB新版本特有的一些编程思想、高效的编程方法、新技术进行了较为详细的讨论,在此基础上,以大量......一起来看看 《MATLAB高效编程技巧与应用》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

URL 编码/解码
URL 编码/解码

URL 编码/解码