【问题标题】:Hibernate along with DataNucleus in Google App Engine在 Google App Engine 中与 DataNucleus 一起休眠
【发布时间】:2014-01-24 17:36:27
【问题描述】:

在单个执行线程中,我需要使用 DataNucleus JDO 模型将某些数据对象保存到 Google DataStore,并使用休眠将其他少数对象保存到 Cloud SQL。我读过几篇文章说休眠需要删除 DataNucleus jar。有什么办法可以使这项工作,

谢谢 斯里吉斯

【问题讨论】:

    标签: hibernate google-app-engine datanucleus


    【解决方案1】:

    这些“很少的帖子”真的提到了一个原因吗?还是只是八卦?就像所涉及的人可能正在使用适用于 JPA 1.0 的古老版本的 GAE/Datastore,所以有一个适用于 JPA 1 的 persistence-api.jar(JPA 2 已经支持它好几年了,并不是说 Google 已将默认设置更改为还没有,但无论如何......)哪个不适用于Hibernate JPA(可能需要v2.0)?那是纯粹的猜测。回答这个问题的唯一方法是你陈述事实。

    如果您有 DataNucleus JDO,那么您不需要 CLASSPATH 中的“datanucleus-api-jpa”,因此 CLASSPATH 中唯一的 JPA impl 是 Hibernate,因此永远不会调用 DataNucleus 代码。

    即使您同时在 CLASSPATH 中有 DataNucleus JPA 和 Hibernate JPA,这也是 persistence.xml 中“persistence-provider”元素的用途,告诉 JPA“Persistence”类要使用哪个提供程序。

    显然,DataNucleus JPA 也是一个兼容的 JPA (2.1) 实现,因此它本身可以与 RDBMS 数据存储完美配合。

    【讨论】:

    • 我提到了this 帖子。
    • 所以有些人指的是古代版本的 GAE/Datastore JPA(使用 JPA1)
    猜你喜欢
    • 1970-01-01
    • 2016-05-06
    • 2013-04-17
    • 2010-09-14
    • 1970-01-01
    • 2011-01-01
    • 2014-01-24
    • 2015-01-02
    • 1970-01-01
    相关资源
    最近更新 更多