Hibernate vs JPA vs JDO-各自的优缺点

发布于 2021-01-30 22:59:44

我对ORM这个概念很熟悉,几年前甚至在n.ibernate项目中使用nHibernate。但是,我没有跟上Java中ORM的话题,也没有机会使用任何这些工具。

但是,现在我可能有机会开始为我们的一个应用程序使用一些ORM工具,以尝试摆脱一系列旧式Web服务。

我很难说出JPA规范之间的区别,您从Hibernate库本身得到的东西以及JDO必须提供的东西。

因此,我知道这个问题有点开放,但是我希望就以下问题得到一些意见:

  • 各自的优缺点是什么?
  • 您对新项目有何建议?
  • 在使用一个框架与另一个框架时是否存在某些条件?
关注者
0
被浏览
81
1 个回答
  • 面试哥
    面试哥 2021-01-30
    为面试而生,有面试问题,就找面试哥。

    一些注意事项:

    • JDO和JPA都是规范,而不是实现。
    • 这个想法是,如果您将代码限制为仅使用标准JPA,则可以交换JPA实现。(适用于JDO的同上。)
    • Hibernate可用作JPA的一种实现。
    • 但是,Hibernate提供了本机API,具有超越JPA的功能。

    海事组织,我建议休眠。


    对于 需要 使用特定于Hibernate的功能时应采取的措施,已有一些意见/问题。有很多方法可以解决这个问题,但是我的建议是:

    • 如果您不担心供应商合作的前景,请在Hibernate和其他JPA和JDO实现之间做出选择, 包括 在决策过程中使用各种特定于供应商的扩展。

    • 如果您对供应商捆绑的前景感到担心,并且不能不借助供应商特定的扩展而使用JPA,则不要使用JPA。(适用于JDO的Ditto)。

    在现实中,你可能需要权衡 多少 你被厂商担心搭配与 多少 ,你需要这些供应商特定的扩展。

    还有其他一些因素,例如您/您的员工对相关技术的了解程度,产品在许可方面的成本以及您相信谁的故事,这些事情会影响JDO和JPA的未来发展。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看