显然,OpenJPA。我也看到提到过 EclipseLink 和 Hibernate,但是在功能上有显着差异吗?
最佳答案
大多数差异来自提供者对 OSGi 的感知程度。例如,您可能需要自己将 Hibernate jar 打包为 OSGi 捆绑包(或使用其他人已经打包的集合 - 网上有一些 float 的)。
有时,提供者会尝试以无法在 OSGi 环境中工作的方式进行类加载,因此,如果您自己包装或使用主要支持的提供者的“离线”功能,则需要注意这一点。
您还需要确保提供者将自己注册为 OSGi 服务。这仅适用于 OpenJPA,并且 Aries 代码库中有一个 EclipseLink 适配器。我假设人们共享的 Hibernate 包也可以做到这一点。在此线程中有关于如何为其他提供者(特别是 DataNucleus)执行此操作的说明:
http://www.mail-archive.com/aries-user@incubator.apache.org/msg00251.html
关于jpa - Apache Aries 托管 JPA 支持哪些 JPA 提供程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10157556/