`

jpa与hibernate比较

    博客分类:
  • JPA
阅读更多
何时考虑JPA的备选方案 

您使用的 Java 的版本决定了实际是否可以应用 JPA。JPA 是 EJB 3.0 规范的一部分,而该规范是 Java EE 5 版本的一部分。如果您未更新到 Java EE 5,则无法使用 JPA。 

您的应用程序需要 JPA 无法提供的服务,比如那些由 EJB 容器提供的服务,在那些情况下您更依赖 EJB。 

在结束对此框架的讨论前,让我们列出一些使用 JPA 作为持久化框架的优势和缺点。 

JPA有什么优势? 

JPA 是基于标准的。越来越多的提供商期待在不久的将来提供 JPA 实施。 

它提供了 Hibernate 和 TopLink 中最好的功能。 

它可以和 Java SE 和 Java EE 应用程序一起使用,需要使用 EJB 容器,也可以不要。 

JPA有什么缺点? 

由于非常新,JPA 规范可能还需要进过重要发展才会变得很稳定。 

JPA 是一个规范而不是一个产品。您需要提供商提供一个实施,才能获得这些基于标准的 API 的优势。 

 

 

何时考虑Hibernate的备选框架 

您还不想要其他框架。尽管简单,Hibernate 框架仍然有自己的学习曲线、维护/更新周期,等等。 

您需要容器提供的服务,比如那些由 EJB 提供的服务,在那些情况下您的选择局限于 EJB。 

如果您正在使用或计划使用 Hibernate 作为您的持久化框架,这里是一些它的优势和缺点。 

Hibernate有什么优势? 

Hibernate 易于学习和使用。正如我在上面提到的,在您可以使用它之前,您只需要了解几个简单、自我描述的配置文件。 

它 非常灵活。您可以在任何需要持久化服务的应用程序架构中使用 Hibernate。您可以通过 Servlet 和/或 Enterprise Java Bean 在 Standard Java 应用程序、Enterprise Java 应用程序中使用它。它也可以和 Spring 框架很好地集成。 

它可以很好地向上扩展,因为它被设计为从底层一直到集群环境中工作。通过类似 Lazy Initialization 的技术以及通过 CGLIB 运行时间字节代码生成库优化 Java 反射,最新版的 Hibernate 的性能也得到了加强。 

Hibernate有什么缺点? 

Hibernate 是另一个拥有自己的应用和维护周期的框架。 

尽管有积极的社区支持,但是有时候缺乏专注于此产品的提供商也使得宣传应用此框架显得没有说服力。

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics