问题标签 [objectify]

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 投票
2 回答
478 浏览

google-app-engine - 使用 Google AppEngine 和 Objectify 更改“模式”

我正在使用 Google AppEngine (Java) 探索 Web 开发。我的应用程序有一个非常基本的数据存储要求,非常适合 AppEngine 的“地图”,如数据存储。

基本单元是一个具有成员变量的类,每个事务将在数据库中写入或读取(这是因为它与 Android 应用程序交互)。

我正在考虑使用Objectify接口。

我的问题是:如果我以后更改基类中的大小(变量数)会怎样?我知道 AppEngine 没有输入,但Objectify如果某些变量可用于某些键而不是其他键,会导致任何问题?

0 投票
1 回答
280 浏览

java - 为什么 dev-server 不为此查询自动创建索引?

这是我的实体类的外观:

这就是我构建/运行查询的方式:

该索引未添加到 datastore-indexes-auto.xml,因此我在开发控制台中看不到它,自然查询(在实时服务器上运行时)什么也不返回。

我知道我可以手动添加索引(请求创建它),但到目前为止,自动创建索引似乎对我来说非常有效。所以我想知道我在这里错过了什么。

更新:我没有意识到在将@Indexed 注释添加到现有属性时必须重新插入数据。

0 投票
1 回答
1049 浏览

java - Objectify BATCH 删除没有效果

我在下面有一个 DAO,每个实体批处理都有一个事务删除。一次删除一个实体就可以了。

批量删除没有任何效果:下面的代码是简单明了的 IMO,但是对deleteMyObjects(Long[] ids)的调用——它调用了Objectify的delete(Iterable keysOrEntities) ——没有效果!

当我调用 deleteMyObjects(Long[] ) 时,我在下面的日志中看不到任何可疑之处。事务提交得很好,没有错误。但数据不受影响。循环遍历相同的 Id 列表并一次删除一个对象,效果很好。

但是数据没有改变并存在于数据存储中!?!?!

欢迎任何帮助。

更新

进入 Objectify 代码,我想知道这是否与命名空间有关?在 objectify 代码中:

当我在调试中检查this.factory.getRawKey(obj)时,我注意到键的命名空间是空的。但是NamespaceManager.get()返回正确的命名空间!?

在此处输入图像描述

0 投票
1 回答
54 浏览

google-app-engine - 数据存储操作的控制台输出

每当更改/读取/查询 App Engine 数据存储区时,是否有办法获取控制台输出?

这将有助于理解像 Objectify 这样的持久性框架何时真正访问数据存储以及它们何时使用缓存值。

0 投票
2 回答
436 浏览

google-app-engine - java.lang.IllegalStateException:尝试在类的变量上创建多个关联

第一次在这里发帖,希望有人能对我一直试图解决的问题有所了解......

作为学校项目的一部分,我们正在尝试构建一个界面来显示地图上的点和地图上的路径。

在我们的第一个 sprint 中,我设法使用 Objectify 存储/检索项目 - 非常棒!

现在我们正在尝试为下一个春天扩展功能。现在尝试存储 MapPath 类型的对象时遇到问题(注意 MapPath 和 MapData,我们的两种数据类型,都扩展类 Data)。简要代码片段如下:

现在希望我还没有失去你。我有一个基本上处理所有事务的 DataService 类。我有以下单元测试:

getSingleton 的实现如下:

JUnit 抱怨:

“试图在类上创建多个关联......名称”到底意味着什么?

对不起,很长的帖子和可能出现的任何格式问题。

0 投票
2 回答
1302 浏览

google-app-engine - 使用 objectify 实现良好的分页

我正在使用 objectify 光标来实现基本的分页,基本上是创建一个more按钮.. 你如何最好地使用 objectify 来实现分页,以建立允许用户前进和后退的链接。更像是一个页面列表..

1, 2, 3, 4, more

0 投票
1 回答
253 浏览

java - 当实体具有长 id 时,GWT Requestfactory 实体定位器不适用于 Objectify

我的 GWT+GAE 应用程序使用 Requestfactroy 实体定位器,在服务器端我使用 Objectify,当我的实体 ID 类型为 String 时它运行良好,现在我想更改为 Long id,并且卡住:通过使用我找不到的定位器签名实体:

因为 Objectify 需要包含 @Parent 键来获取子实体(HRD),并且从上面的方法中我们无法获取父实体。我从 GWT 论坛找到了这个帖子: 这里

然而,这个线程似乎没有给出任何建设性的建议(它最终回落到 String ID Entity 的解决方案)。

非常感谢。

0 投票
2 回答
535 浏览

google-app-engine - HRD 数据存储中的嵌套实体组

我在 HRD 谷歌应用引擎数据存储中使用嵌套实体组。

A < B < C 考虑 X < Y 意味着 X 是 Y 的父级

所有 C 都在同一个实体组(A 一个)中吗?

我想查询所有具有相同父 A 的 C。我该怎么做?

这是失败的:SELECT * FROM C WHERE ANCESTOR IS Key('A',1)

任何提示?

测试已直接在数据存储区的 GQL 中完成,无论如何,我附上代码片段(Ofy4 代码):

这是一个:

那是B:

那是C:

0 投票
2 回答
646 浏览

google-app-engine - 嵌套对象化事务是否保持原子性 - 或者它们是否有效

我有一个关于 objectify 的快速问题 - 这可能在实际文档中,但我没有找到任何东西,所以我在这里要求安全。

我有一个使用 objectify 的后端,我有点冲出去 - 我想做的是以下 - 我有一个由活动组成的活动计划。目前,如果我删除一个事件,我实际上是在编写所有逻辑来删除事件计划删除方法中的各个活动。

我想知道的是,如果我从事件计划删除方法中调用活动删除方法(如果它允许我这样做),它是原子的吗?

示例(这只是伪代码 - 不是实际的 - 案例和方法名称可能是错误的):

这样做安全吗?- 就像现在一样,它如此混乱的原因是因为我没有意识到实体组问题 - 活动中的某些东西与活动本身不在同一个实体组中 - 在修复这个之后我把所有事件计划删除中的逻辑和方法变得难以管理 - 可以将东西分解成更小的部分还是会破坏原子性。

谢谢你

0 投票
2 回答
323 浏览

java - 为什么将电子邮件、用户名、邮政编码等作为 GAE 数据存储中的实体

我已经看到在 GAE 数据存储中有这么多的实体,最后是字符串,至少显然是这样。

GAE Java 数据存储实体列表

我想知道这背后的原因?索引?语义搜索?