Spring Data JPA Vs Hibernate JPA Vs JPA

前言

从文章的标题,就可以清晰地了解到,本文是来辨析三个容易将新手弄糊涂的技术名词。如果,你一眼看过去就知道这三个名词的区别及关系,那么,这篇文章你可以不用继续读下去了;除非,你是想要看看我有什么解释的不对,来纠错的(来找茬,哈哈),也欢迎留言。

名词解释

  • JPA(Java Persistence API,Java持久化API),它是一个关于如何处理对象关系映射(object-relational mappings)的规范;即,定义了映射Java中的Object到关系数据库Table的标准流程。
  • Hibernate JPA,它实现了JPA规范,是JPA规范的厂商(想想JDBC规范和MySQL数据库厂商的关系,JPA和Hibernate也是这么一种关系)。
    除了Hibernate这个厂商,EclipseLink也是一个比较流行的JPA厂商。
  • Spring Data JPA,它是JPA规范的一个数据访问抽象;Spring Data旨在提供一种一致的数据访问模型,用于访问来自不同存储类型的数据。

JPA 背景

在引入EJB 3.0规范之前,许多企业级Java开发人员使用由持久化框架(例如Hibernate)或数据访问对象(DAO)提供的轻量级持久化对象,来代替实体bean(EJB的一种)。 这是因为在以前的EJB规范中,实体bean需要太多复杂的代码和繁重的资源占用,并且由于bean和DAO对象或持久化框架之间的源代码中的互连和依赖性,使得它们只能在Java EE应用程序服务器中使用。 因此,最初在第三方持久性框架中提供的许多功能都被合并到Java Persistence API中,并且从2006年开始,像Hibernate(版本3.2)和TopLink Essentials这样的项目已经实现Java Persistence API规范。

JPA 编年史

  • 2006年5月, JPA 1.0 规范作为 JCP JSR 220 的一部分最终被发布。
  • 2009年12月,JPA 2.0 规范发布(JSR 317,Java EE 6 平台,依赖于 JPA 2.0。)
  • 2013年4月, JPA 2.1 规范发布(JSR 338,Java EE 7 平台,依赖于 JPA 2.1。)
  • 2017年6月, JPA 2.2 规范发布(JSR 338)

参考资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值