当前位置: 首页 > 知识库问答 >
问题:

spring boot JPA和Hibernate有什么不同

鄢飞鸾
2023-03-14

我想知道Spring boot JPA是如何使用hibernate的,Spring boot JPA和hibernate之间有什么关系吗?当我们使用boot jpa时,我们只是实现了org.springframework.data.jpa.repository.jparepository接口,可以使用与列名匹配的函数名编写查询,也可以编写自定义查询,那么hibernate在这里的角色是什么?我们怎么能说hibernate是JPA在spring Boot中的实现呢?

共有1个答案

爱茂勋
2023-03-14
  • Spring Data JPA是对JPA(Java Persistence API)的Spring抽象,具有更易于使用的方法以及JPA规范中定义的默认值
  • hibernate在另一种情况下是JPA实现(JPA提供程序)。

Spring数据本身不能存在,需要一个或另一个JPA提供程序来实现方法。由于这个原因,Spring Data JPA可以与任何JPA提供程序一起工作,但默认情况下使用Hibernate自动配置。

因此,Spring-data中用于实体管理和查询提交等的所有ORM特性仍然使用Hibernate实现。存储库只允许您随时编写查询,这些查询再次被转换为基于datasource提供程序和默认hibernate SQL方言的基本查询。

您还可以将Spring-Data与其他JPA提供程序一起使用,如(Toplink、OpenJPA、Eclipselink),并在项目中进行配置。

 类似资料:
  • 问题内容: 我知道JPA 2是一个规范,而Hibernate是ORM的工具。另外,我了解到Hibernate具有比JPA 2更多的功能。但是从实际的角度来看,真正的区别是什么? 我有使用iBatis的经验,现在我想学习Hibernate或JPA2。我拿起Pro JPA2书籍,并且一直指“ JPA提供者”。例如: 如果您认为某个功能应该被标准化,则应该大声疾呼并向您的JPA提供者提出要求 这使我感到

  • 问题内容: 尽管不是新手,但我仍在尝试学习spring框架,以确保我真的了解这一点。我对核心Spring(DI)有一个很好的主意。现在,我专注于数据层。 我遇到过“ spring和hibernate ” 这个词。正如我可以解释的那样,这意味着将Spring框架与Hibernate一起用作ORM工具/ JPA提供程序。 现在,我遇到了“ Spring Data JPA ”。我在SO上澄清了有关Spr

  • 问题内容: Hibernate和Spring Data JPA之间的主要区别是什么?什么时候不应该使用Hibernate或Spring Data JPA?另外,Spring JDBC模板何时可以比Hibernate / Spring Data JPA更好地执行? 问题答案: Hibernate是一个JPA实现,而Spring Data JPA是一个JPA数据访问抽象。没有JPA提供程序,Sprin

  • 本文向大家介绍getComputedStyle和element.style有什么不同?相关面试题,主要包含被问及getComputedStyle和element.style有什么不同?时的应答技巧和注意事项,需要的朋友参考一下 element.style 只能获取内联样式属性 getComputedStyle() 可以获取所有样式属性

  • 本文向大家介绍frame和bounds有什么不同?相关面试题,主要包含被问及frame和bounds有什么不同?时的应答技巧和注意事项,需要的朋友参考一下 答案:frame指的是:该view在父view坐标系统中的位置和大小。(参照点是父亲的坐标系统) bounds指的是:该view在本身坐标系统中 的位置和大小。(参照点是本身坐标系统)  

  • 本文向大家介绍"attribute"和"property"有什么不同?相关面试题,主要包含被问及"attribute"和"property"有什么不同?时的应答技巧和注意事项,需要的朋友参考一下 property 是DOM中的属性,是JavaScript里的对象 可以读取标签自带属性,包括没有写出来的 不能读取attribute设置的属性 获取方式:读:element.property;