Eclipse使用哪种JPA实现?

时间:2015-08-31 16:58:18

标签: java eclipse hibernate jpa

我知道JPA与示例Hibernate或EclipseLink的具体实现之间的区别,但我感兴趣的是,当我下载例如Eclipse JAVA EE版本,然后在我的项目中使用javax.persistence包,它使用哪个实现?我的猜测是EclipseLink或OpenJPA,但我怎么知道?

我对此感兴趣,因为我比较了Hibernate和javax.persistence包的性能(从db只有几千行),而且从我的观点来看性能差距很大(大约一秒)

2 个答案:

答案 0 :(得分:1)

您可以使用平台下拉列表在JPA Facet窗格中选择它。请参阅Eclipse documentation

JPA Facet Page screenshot

如果要使用Hibernate,则必须在Eclipse Marketplace中手动添加它。请参阅:JPA Creation - Hibernate not showing in platform

答案 1 :(得分:0)

Eclipse EE将通过您可以添加到项目的JPA方面捆绑EclipseLink,但除此之外它并没有提供任何特定的实现(如果您使用facet配置其他实现,则可以将其配置为提供其他实现用户库)。您的实现由库或您要部署到的应用服务器提供。从长远来看,更具战略性的方法是通过依赖关系(maven)或引用/使用应用服务器提供的库来明确包含实现。