【问题标题】:What are advantages of pure hibernate over JPA using Hibernate?纯休眠比使用休眠的 JPA 有什么优势?
【发布时间】:2019-08-12 11:49:13
【问题描述】:

我即将为我的新 Java EE 应用程序选择 ORM 层。根据我之前的经验,我开始感觉到使用纯 Hibernate 而不是 JPA 将帮助我加快开发速度。

原因: 1) 很少有机会遇到需要用 Eclipse-Link 或其他 ORM 提供程序替换 Hibernate。 2) HQL 处理引擎比任何 ORM 提供者的 JPQL 引擎都更古老和成熟。 3) Hibernate 可以为我提供 MAP 列表作为输出结果集,而不是 JPQL 提供的数组列表(在更改代码时必须记住索引)。 4) 在 JPQL 中获得更多自定义结果集的唯一方法是通过 Query 绑定实体。

如果有人能在这个思路上帮助我,我将非常有帮助。

我想创建一个比较,我可以展示纯休眠与 JPA(由休眠)相比的优缺点

【问题讨论】:

    标签: hibernate jpa hql jpql


    【解决方案1】:

    关于 JPA 与 Hibernate 进行了广泛的讨论。你可以在这里找到它:What's the difference between JPA and Hibernate?

    Hibernate 已经开始弃用它的一些功能,例如 Criteria。请参阅文档第 16 章:

    Hibernate 提供了一个旧的、遗留的 org.hibernate.Criteria API,它 应该被视为已弃用。

    没有功能开发将针对这些 API。最终, Hibernate 特定的 Criteria 特性将作为扩展移植到 JPA javax.persistence.criteria.CriteriaQuery。有关详细信息 org.hibernate.Criteria API,请参阅 Legacy Hibernate Criteria Queries。

    https://docs.jboss.org/hibernate/orm/5.4/userguide/html_single/Hibernate_User_Guide.html

    总之,您应该尽可能使用 JPA API,并在有用的情况下使用 Hibernate 特定功能。

    同样来自文档第 15 章:

    JPQL 查询始终是有效的 HQL 查询,

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-01-19
      • 2013-06-19
      • 2011-06-25
      • 1970-01-01
      • 1970-01-01
      • 2011-05-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多