JPA2.0实现比较:Hibernate3.5与EclipseLink 2与OpenJPA2

JPA2.0实现比较:Hibernate3.5与EclipseLink 2与OpenJPA2,hibernate,jpa-2.0,Hibernate,Jpa 2.0,你的选择是什么?你有什么建议和经验吗 我正在用Hibernate3.5和Spring3.0开发一个应用程序 优点: 良好的文件 简单的配置和有用的日志 广受欢迎的社区 JPA的一些扩展 一些额外的工具-用于Eclipse的JBoss工具、hbm2ddl、生成静态元模型等 缺点: 虫子!(序列、集合等) “纯”冬眠使许多呼吸倍增。遗留的Hibernate和JPA注释中存在混乱 我正在考虑换成EclipseLink。你觉得怎么样 编辑: 我试过日食,有过非常糟糕的经历。似乎EclipseLi

你的选择是什么?你有什么建议和经验吗

我正在用Hibernate3.5和Spring3.0开发一个应用程序

优点:

  • 良好的文件
  • 简单的配置和有用的日志
  • 广受欢迎的社区
  • JPA的一些扩展
  • 一些额外的工具-用于Eclipse的JBoss工具、hbm2ddl、生成静态元模型等
缺点:

  • 虫子!(序列、集合等)
  • “纯”冬眠使许多呼吸倍增。遗留的Hibernate和JPA注释中存在混乱
我正在考虑换成EclipseLink。你觉得怎么样

编辑:


我试过日食,有过非常糟糕的经历。似乎EclipseLink需要LoadTimeWeaver,并且喜欢在OSGi平台上运行,而不是在简单的Jetty或Tomcat环境下运行。我只是没有时间做所有这些配置工作。

EclipseLink在没有Weaver的情况下运行得非常好,在Jetty、Tomcat或OSGi平台上运行得同样好。标准下载是一个简单的eclipselink.jar。您是否错误地下载了OSGi捆绑包


Weaver不是必需的,但它会增加一些性能优势,如果您不想将其配置为在Spring中运行,您可以在编译时使用静态Weaver()。

我认为这取决于您的应用程序。如果您打算使用许多与Oracle相关的功能(例如,在SQL或分层查询中需要提示等等),EclipseLink更适合您。在其他情况下,选择Hibernate。更多详细信息,请访问
顺便说一句,不要关心ORM的性能基准测试-如果性能对ORM至关重要-根本不要使用ORM

你的答案很有趣。我对ANT的静态weaver方法感兴趣,即
org.eclipse.persistence.tools.weaving.jpa.StaticWeaveAntTask
——但由于这个错误,我似乎无法让它工作。这是Eclipselink 2的一个bug吗?谢谢你的回复!请务必仔细阅读本手册。还请注意,每次链接到自己的网站/产品时,都需要发布免责声明。