我已经有了一些使用 Hibernate 的经验,但是,如果我是对的,那么没有办法使用它来访问像 Versant 的 VOD 这样的对象数据库。因为他们刚刚发布了 preview with JPA support我想知道是否可以利用我有限的 Hibernate 技能将对象数据库与 JPA 结合使用。如果有人有经验,请告诉我这些版本是否兼容。
最好。
哈利
最佳答案
首先让我声明一下:我是 Versant JPA 的开发人员之一。
要使用 Versant JPA,具备基本的 JPA 技能就足够了。
我们提供了一个教程,安装后应该可以开箱即用 “Versant JPA”技术预览版和提供的 Eclipse 插件。只需查看此内容和提供的“Versant JPA 入门”手册,即可获得它的易用性的第一印象。
我不同意 DataNucleus 的一些说法: 是的,Versant 是 ODBMS,而不是 RDBMS,因此我们忽略任何特定的内容 映射 - 您的 Java 数据模型实际上与 Versant 数据库中的数据模型相同。 然而,除了所有与映射相关的内容之外,JPA 也是对象数据库的天然 API。我不同意 JPQL 的设计与 JPA 的设计考虑了 RDBMS 的事实之间存在很大的相关性。 (实际上,微软已经通过将 LINQ 抽象到与数据存储无关的级别来证明这一点。)
Versant JPA 和基于 RDBMS 的 JPA 实现之间的所有重大差异均在我们的“JPA 入门”指南的单独章节中进行了描述。 最大的一个可能是我们的限制,即具有“long”或“java.lang.Long”类型的@Id字段,这是由我们的运行时自动设置的。
我们也有 JDO 实现,但我建议尝试一下我们的 Versant JPA 技术预览版(正如术语“预览版”所暗示的那样,它的功能尚未完成)。
克里斯蒂安·隆伯格
关于hibernate - OODB JPA 实现与 Hibernate 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8475741/