问题标签 [jdo]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
1471 浏览

java - JDO 未获取集合成员字段

上课:

我可以用这个将它保存到数据库中

但是当我把它加载回来

Nodebag.nodes 总是空的!

我错过了什么?

提前致谢。

问候,保罗

0 投票
2 回答
5035 浏览

google-app-engine - Gae Jdo 对具有双向导航的一对多拥有关系的持久性

我正在尝试使用 JDO 在 GAE 中与双向导航保持一对多的拥有关系。

我手动添加ContactUser类,我希望最终Contact会有对父User对象的引用。

  • 如果我在持久化父对象之前手动配置它,则会出现异常:org.datanucleus.store.appengine.DatastoreRelationFieldManager.checkForParentSwitch(DatastoreRelationFieldManager.java:204)
  • User对象持久化之后,父引用不会更新。
  • Contact使用键从数据存储中检索对象后,父引用不会更新。

我不明白我的错误在哪里。

0 投票
2 回答
1279 浏览

java - Google App Engine (Java) + Spring 管理的 PersistenceManager

我对刚刚检索到的对象列表的 JDO 持久性有点问题。

我想做的是:

  • 获取“订单”列表
  • 修改一个属性“状态”
  • 批量更新“订单”

到目前为止,我得到的是"Object with id ... is managed by a different Object Manager"。但是等等,没有 Spring,我还没有遇到过这样的问题!

我试图像这样调试它:

makePersistentAll 除了:

我所有的 DAO 都扩展了 JdoDaoSupport。pmf 由 spring 注入和管理。

最后,问题来了:为什么在findByIdAll之后持久化管理器关闭了?或者我为什么要获得新的持久性管理器实例?当然,我的 findByIdAll 方法不会在持久性管理器上调用 close。

当然,如果我为每个“订单”调用 makePersistent 效果很好。但它打破了业务和数据库逻辑的分层......

UPD 刚刚发现,在迁移到 spring 管理的 PersistenceManager 后,所有对 makePersistentAll 的调用都不起作用。在春天之前,我使用了普通的旧 PMF.get() 助手,一切都很闪亮!

0 投票
2 回答
871 浏览

java - 有没有办法使用 JDO 在 GAE/J 中拥有一个非持久性字段?

我不打算让问题成为孩子,因为我必须独立操作它,而且我不想保留问题字段,我会通过手动检索问题来填写它。这是代码。

问卷调查.java

问题.java

会吐出这个错误:

org.datanucleus.store.appengine.MetaDataValidator$DatastoreMetaDataException:com.ivanceras.server.Question.questionID 的元数据错误:不能有 java.lang.Long 主键并且是子对象(拥有字段是 com.ivanceras .server.Questionnaire.questions)。

0 投票
2 回答
585 浏览

google-app-engine - 我可以使用 JDO 将实体序列化为 byte[] 吗?

在 Google App Engine 中,我可以使用 JDO 将 Java 对象持久保存到数据存储中。我是否也可以使用 JDO 将对象转换为byte[],以便可以将其放入 memcache 或通过 HTTP 发送?

澄清:我想序列化我已经为 JDO 持久性注释的类。不得不使用另一种序列化机制似乎不必要地重复了工作,而且还可能很棘手,因为 JDO/DataNucleus 在其类上使用字节码操作来提供延迟加载等特性。

0 投票
3 回答
1978 浏览

java - Google App Engine 上的 Datanucleus/JDO 2 级缓存

是否可以(并且有意义)将 JDO 2 级缓存用于 Google App Engine 数据存储区?

首先,为什么 Google 的页面上没有关于此的文档?它有一些问题吗?我们是否需要设置限制来保护我们的内存缓存配额?

根据Stackoverflow 上的 DataNucleus,您可以设置以下持久性属性:

这就是全部?我们可以选择任何缓存名称吗?

Internet 上的其他 来源报告使用不同的设置。

此外,我们似乎需要下载DataNucleus Cache 支持插件。哪个版本合适?我们只是把它WEB-INF/lib放进去还是需要更多的设置来激活它?

0 投票
3 回答
1854 浏览

java - App Engine 上的 getObjectsById

根据 JDO,您可以使用PersistenceManager.getObjectsById通过对象 id 加载多个实体实例。

这里需要使用什么样的 Collection?Google 数据存储密钥不能用作对象 ID。

0 投票
1 回答
1402 浏览

google-app-engine - 无法在 gwt 谷歌数据存储中获取图像数据 - 图像被排除

我有一个类,我在其中声明了一个序列化类来存储图像数据

类的实现

public DownloadableFile(byte[] content, String filename, String mimeType) { super(); this.content = 内容;this.filename = 文件名;这个.mimeType = mimeType; } 私有静态最终长序列版本UID = -8497358622042084708L; 私有字节[] 内容;私有字符串文件名;私有字符串 mimeType;公共可下载文件(){}}

showlogo 是一个 servlet,它应该从数据存储中获取内容,但它的所有调用都返回 null,而 blob 在 appwrench 中是可见的。

预期影响图像数据的位置

编辑:现在图像数据被保存和获取,但图像被拉伸。我试过给出高度/宽度等,

小服务程序代码:

0 投票
1 回答
655 浏览

java - JDO 查询中的多个类

我目前正在 GAE 中开发,我必须使用 JDO 进行这样的查询:

SELECT table1.column1, table2.column2 FROM table1, table2 WHERE table1.column1 = table2.column1;

我试过这个,但它不会工作:

这是有效的还是真的不支持?如果这是有效的,为什么它不起作用呢?如果不是,我应该怎么做才能完成这项工作?

谢谢!

0 投票
1 回答
811 浏览

google-app-engine - 如何在 Google App Engine 上的同一个 RPC 请求中始终使用同一个 PersistenceManager

有没有办法确保在同一 RPC 请求的上下文中执行的不同代码部分中使用相同的 PersistenceManager 实例?

不得不手动处理从一个函数到另一个函数的持久性管理器实例是相当痛苦的:

例如: