JPA 2.0实现比较:Hibernate 3.5 vs EclipseLink 2 vs OpenJPA 2

时间:2010-06-14 06:23:55

标签: hibernate jpa-2.0

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

我正在使用Hibernate 3.5和Spring 3.0开发应用程序

优点:

  • 良好的文档
  • 简易配置和有用日志
  • 人气广泛社区
  • JPA的一些扩展
  • 一些额外的工具 - 用于Eclipse的JBoss工具,hbm2ddl,生成静态元模型等...

缺点:

  • 错误! (序列,收集等......)
  • “纯粹”的Hibernate将大量的特征加倍。传统的Hibernate和JPA注释有些混乱。

我正在考虑切换到EclipseLink。你觉得怎么样?

编辑:

我尝试过EclipseLink并且遇到了非常糟糕的经历。似乎EclipseLink需要LoadTimeWeaver并且喜欢在OSGi平台上运行而不是简单的Jetty或Tomcat环境。我没有时间处理所有这些配置。

2 个答案:

答案 0 :(得分:6)

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

Weaver不是必需的,但它会增加一些性能优势,如果你不想将它配置为在Spring中运行,你可以在编译时使用静态编织器(http://wiki.eclipse.org/Using_EclipseLink_JPA_Extensions_%28ELUG%29#To_Configure_Static_Weaving_for_JPA_Entities)。

答案 1 :(得分:0)

我说这取决于你的申请。如果您要使用大量与Oracle相关的功能(例如,您需要在SQL或分层查询中提示等),EclipseLink更适合您。在其他情况下拿起Hibernate。您可以在http://simpletoad.blogspot.com/2012/11/what-u-must-know-about-eclipselink-orm.html找到更多详细信息 BTW,不关心ORM的性能基准测试 - 如果性能是关键 - 不要使用ORM