优点与缺点:Hibernate与EJB 3

Zac*_*ese 7 java orm hibernate jpa

Hibernate和EJB3相对于彼此有什么优缺点?

我找到了这篇文章,但它没有真正解决我的问题.如果我对这两种技术没有任何特殊的联系,那会导致我选择一种技术吗?或者是否有我想要同时使用它们的情况?

谢谢,扎克

编辑:回应评论:我对EJB3了解不多.我只是想了解它是否适​​用于我的公司.如果EJB3不能与Hibernate相媲美,请解释原因.

Ken*_*Liu 9

JPA提供了Hibernate功能的子集,但EJB3提供了Hibernate无法解决的其他服务(例如Web服务,EJB,Timer服务)

与Hibernate相比,JPA具有以下优点:

  • 标准化API
  • 供应商独立性(可以在Hibernate,TopLink,OpenEJB等之间切换)

Hibernate具有以下优点:

  • 广泛使用
  • 事实上的标准
  • 来自Spring,Grails等的直接支持
  • 可能更好的工具支持
  • 比JPA更多的功能

您可以做的是使用JPA在EJB中编写应用程序,然后在必要时使用特定于Hibernate的功能.或者,如果您不关心标准化和供应商锁定,只需使用普通的Hibernate进行持久化.实际上,你不太可能在Hibernate和其他提供商之间切换,但确实会发生.