我对ORM这个概念很熟悉,几年前甚至在n.ibernate项目中使用过nHibernate。但是,我没有跟上Java中ORM的话题,也没有机会使用任何这些工具。
但是,现在我可能有机会开始对我们的一个应用程序使用一些ORM工具,以尝试摆脱一系列旧式Web服务。
我很难说出JPA规范之间的区别,您从Hibernate库本身获得的收益以及JDO必须提供的收益。
因此,我知道这个问题有点开放,但是我希望就以下问题得到一些意见:
一些注意事项:
海事组织,我建议hibernate。
对于 需要 使用特定于Hibernate的功能时应采取的措施,已有一些意见/问题。有很多方法可以解决这个问题,但是我的建议是:
如果您不担心供应商合作的前景,请在Hibernate,其他JPA和JDO实现之间做出选择, 包括 在决策过程中使用各种特定于供应商的扩展。
如果您对供应商捆绑的前景感到担心,并且不能不借助供应商特定的扩展而使用JPA,则不要使用JPA。(适用于JDO的Ditto)。
在现实中,你可能需要权衡 多少 你被厂商担心搭配与 多少 ,你需要这些供应商特定的扩展。
还有其他一些因素,例如您/您的员工对相关技术的了解程度,产品在许可方面的成本,以及您相信谁会对JDO和JPA将来发生的事情有一个故事。