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。


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

查看所有标签

猜你喜欢:

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

深入浅出MFC (第二版)

深入浅出MFC (第二版)

侯俊杰 / 华中科技大学出版社 / 2001-1 / 80.00元

《深入浅出MFC》分为四大篇。第一篇提出学习MFC程序设计之前的必要基础,包括Widnows程序的基本观念以及C++的高阶议题。“学前基础”是相当主观的认定,但作者是甚于自己的学习经验以及教学经验,其挑选应该颇具说服力。第二篇介绍Visual C++整合环境开发工具。此篇只是提纲挈领,并不企图取代Visual C++使用手册;然而对于软件使用的老手,此篇或已足以帮助掌握Visual C++整合环境......一起来看看 《深入浅出MFC (第二版)》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

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

RGB CMYK 互转工具