JPA和hibernate关系

听你的难过陪你沉默 发布于 2013/07/31 22:48
阅读 2K+
收藏 0
JPA是接口hibernate是实现?大家怎么理解?
加载中
1
李德凯
李德凯

相对完整的说法和历史:


先有了Hibernate,轻量级java orm实现,但是大堆的配置文件(早期)很烦人,于是hibernate就开始改进,越改越好。


改得很好用以后,大家跟风出一堆orm,这时大家一起成立了jpa规范小组,然后在javaee规范中制定了orm标准,hibernate实现了这个标准(同时依然支持使用原来自己的hibernate api调用)

类似于hibernate的其他规范还有openjpa等等一大堆,具体可以搜索一下。具体选择的时候要么自己配库,要么使用容器提供的。我曾用过glassfish,它自己提供的就很好用。

当然,hibernate并不只是jpa实现,它一直保留着自己的api,只不过为了一些移植性,现在开始流行使用jpa接口,只有一些不知道java是什么的ssh程序员只了解hibernate和spring整啊整啊整,连数据库连啊连啊连。其实用jpa,好用得多。

李德凯
李德凯
回复 @刘19 : 客气,其实我不太懂Java,只是用过,随便扯一扯。你现在用JPA?
听你的难过陪你沉默
听你的难过陪你沉默
很详细。谢谢
0
南湖船老大
南湖船老大

这么描述二者的关系貌似不是很合理,我觉得JPA和hibernate是连个完全平行的关系

0
吾同树
吾同树
JPA是Java的对象关系映射(ORM)官方标准(说规范更恰当),Hibernate相当于这个这个标准的实现。
0
_Mr_Right_
_Mr_Right_

从本质上来说: JPA 是hibernate的儿子 ,听说JPA 的研发 是有hibernate的作者指导开发的

从规范/标准上看,hibernate是 JPA的实现

返回顶部
顶部