问题标签 [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.
google-app-engine - GWT+UIBinder+Gin+Guice+JDO+GAE 示例
我正在尝试将所有这些技术联系起来,但是有很多孤立的例子,我没有足够的经验将它们联系在一起
所以我的问题:是否有类似的例子?是否可以将 UIBinder 与 Gin 一起使用?有什么建议可以实施吗?
java - 如何在一个实体组中创建实体?
我正在使用 JDO 构建基于 google app engine (Java) 的应用程序以实现持久性。
有人可以给我一个例子或指出一些代码,这些代码显示在事务中使用 javax.jdo.PersistenceManager.makePersistentAll() 持久化多个实体(相同类型)。
基本上我需要了解如何将多个实体放在一个实体组中,以便可以在事务中使用 makePersistentAll() 保存它们。
java - 需要更新 GAE Java 中现有对象的主键
我正在使用 GAE Java 构建一个 Web 应用程序。我有一个使用 Long ID(由 appengine 生成)作为其主键的类。
我现在想创建一个新类,它将成为这个原始类的父类(一对多关系)但是孩子需要有一个“key”类型的主键,而不是我现在拥有的 Long ID。
对于现有的持久化实体,将主键更改为“键”类型而不是长键的最佳方法是什么?我应该创建一个主键类型为“key”的新类,并实例化和持久化从旧对象复制字段值的新对象吗?或者我可以以某种方式更新现有的课程吗?
谢谢
google-app-engine - 我可以使用 GAE 的 JDO 定义一个只读事务吗?
我正在使用最新版本的 GWT GAE w/JDO 堆栈。我有一个使用数据存储更新持久对象的任务队列。我还有一个显示保存对象的 gwt 用户界面(无需修改)。
给定严格定义的事务(开始/提交)边界。我有没有办法为 GUI 定义一个与更新对象的任务不冲突的只读事务?
我相信他们是冲突的并抛出这些异常(节略)
在 org.datanucleus.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:402) 在 org.datanucleus.jdo.JDOTransaction.commit(JDOTransaction.java:132) .... NestedThrowablesStackTrace: java.sql.SQLException: 在 org 的并发修改.datanucleus.store.appengine.DatastoreTransaction.commit(DatastoreTransaction.java:70)
java - 如何从 java.sql.SQLexception 重试/恢复:并发修改
在 GAE 上使用 JDO,我正在使用一个简单的数据库事务代码块,如下所示。
什么是从抛出的 java.sql.SQLException 重试/恢复的好方法:并发修改?
私人最终提供商 pmp;...
PersistenceManager pm = pmp.get(); 尝试 { pm.currentTransaction().begin();
MyObject myObject= pm.getObjectById(MyObject.class, id);
pm.currentTransaction().commit();
} 最后 {
if (pm.currentTransaction().isActive()) { log.severe( this.getClass().getName() + " 捕获 DATABASE 异常。"); pm.currentTransaction().rollback(); } }
java - App Engine JDO 架构更改。更新新的不可为空的值
不可为空的类型包括 int 和 boolean。我的问题是如何通过架构更改添加这些类型的新变量来更新已经持久的对象。似乎我无法检索这些对象,因为它们现在有一个 null 变量,其中 null 是不允许的!
如果该字段不是可为空的值类型,则加载没有相应属性的实体会引发异常。如果实体是从用于重新创建实例的同一 JDO 类创建的,则不会发生这种情况,但如果 JDO 类发生更改,或者如果使用低级 API 而不是 JDO 创建实体,则可能发生这种情况。
这是否意味着不可能将这些类型的变量添加到我的模式中?
java - 加入多个结果集
我正在尝试开发一个 Java 应用程序,它可以合并来自多个数据源的数据,基本上是 RDBMS。场景是这样的。
我已经创建了到两个数据源的连接,比如说一个 MSSQL 数据库和其他 Oracle。同样在每个连接上,用户可以创建一个包含 SQL 查询和连接的 DataObject(Java 对象)。在连接上执行查询并显示结果。
现在我想要的是我的用户可以加入和过滤从多个 DataObject 获得的结果。
目前我正在寻找以下解决方案:
请就我的选择给我建议。也请可以研究其他解决方案。
java - 如何在 JDO 中延迟加载属性(在 Google App Engine 上)?
我的@PersistenceCapable 类之一中有此代码:
它Blob
可以很大,所以我想懒惰地加载它,因为大多数时候我不需要它。如何注释该属性以避免立即加载?我可以创建另一个包含Blob
单独的类,然后使用一对一的惰性,但我想用注释来解决这个问题。
java - 为什么 Google App Engine 文档强调 JDO 而不是 JPA?
Google App Engine 的大部分文档都是为 JDO 编写的。只有一页文档专门用于使用 JPA。这是因为 JDO 更适合 App Engine,还是有其他原因给予 JDO 优惠待遇?
java - JDO - 在将模型对象传递给视图之前,我是否需要在模型对象上调用 DetachCopy?
我对分离副本的理解是它会复制您的对象,以便您可以在没有 PersistenceManager 注意到的情况下对其进行更改。
因为我在将模型对象传递给要使用的视图之前关闭了我的 PersistenceManager,所以在传递它之前我不必调用 detachCopy 或 makeTransient 之类的东西吗?
我看到的例子确实调用它......这是我从http://code.google.com/appengine/docs/java/datastore/creatinggettinganddeletingdata.html看到的例子: