Java Hibernate/Toplink在JPA之上提供了什么?

Java Hibernate/Toplink在JPA之上提供了什么?,java,hibernate,jpa,orm,toplink,Java,Hibernate,Jpa,Orm,Toplink,据我所知,JPA本身提供了所有闪亮的特性,如ORM、JPQL、实体关系映射等。但我真的不明白,为什么人们在JPA上使用Hibernate或Toplink Hibernate提供了什么JPA本身没有的功能?JPA只是一个规范。Hibernate和TopLink是该规范的实现 此外,JPA规范有点弱,它只提供了Hibernate和TopLink等提供的功能的子集。有时,超越JPA并使用底层实现的专有功能是可取的或必要的。您应该与JPA1进行比较,然后与JPA2进行比较(尚未确定,但有一个规范),并查

据我所知,JPA本身提供了所有闪亮的特性,如ORM、JPQL、实体关系映射等。但我真的不明白,为什么人们在JPA上使用Hibernate或Toplink


Hibernate提供了什么JPA本身没有的功能?JPA只是一个规范。Hibernate和TopLink是该规范的实现


此外,JPA规范有点弱,它只提供了Hibernate和TopLink等提供的功能的子集。有时,超越JPA并使用底层实现的专有功能是可取的或必要的。

您应该与JPA1进行比较,然后与JPA2进行比较(尚未确定,但有一个规范),并查看您希望在应用程序中使用的功能,以确定JPA是否不支持这些功能。这是评估您是否可以使用纯JPA的唯一合理方法。所有持久性技术的实现都有自己的附加组件,这些附加组件可能对应用程序有很大意义,但它们可能不太重要。评估应用程序中对象之间的关系类型。开始时,是否使用作为接口的字段?JPA不支持接口定义的关系。JPA1不支持1-N uni dir FK关系,但这在JPA2中


--安迪()

我也在研究这个问题。您能否提供(或至少让我看一下在线文档)您提到的以下两件关于JAP1)接口定义关系和2)不支持1-N uni dir FK关系阅读JPA规范将确认我所说的内容。