java - AppEngine JDO 查询过滤器 "property has ancestor"

标签 java google-app-engine jdo

我存储了一个“ContainableObject”类型的实体,其中有一个“Container”类型的实体作为其属性之一。

class ContainableObject {

    @Persistent
    @Unowned
    private Container container;
    ...

“容器”有一个类型为“建筑物”的父实体

由于表实际上存储了包含其父键的容器的键(即属性容器是 Key('Building',1,'Container',23) ,有什么方法可以沿着 select * from ContainableObject where container has heavenly Key('Building', 1) 的行编写查询

我知道我还可以将 Building 存储为 ContainableObject 的直接属性,以便在查询过滤器中使用它,但这是唯一的方法吗?我很确定答案是肯定的,但我想要一些确认,因为它不完全是一个连接,因为父 key 埋在某个地方。

注意:ContainableObject 与 Container 位于不同的实体组中,这不是祖先查询,据我所知,JDO 的 AppEngine 实现无论如何都不支持祖先查询。

最佳答案

不可能有您指定的查询。您需要修改代码结构才能实现您的目标。

希望这有帮助。

关于java - AppEngine JDO 查询过滤器 "property has ancestor",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13168354/

相关文章:

java - 与我的浏览器相比,Jsoup 提供了不同的 HTML 文档

python - 删除由 Google App Engine 的 dev_appserver.py 生成的本地数据

java - 是否可以 Autowiring JDO PersistenceManager 或仅 Autowiring PersistenceManagerFactory?

java - org.apache.maven.plugin.MojoExecutionException : The DataNucleus tool org. datanucleus.enhancer.DataNucleusEnhancer 以非空退出代码退出

java - Google App Engine JDO 问题

java - 添加到queueList时出现IndexOutOfBoundException

java - Reactor对象是线程安全的吗?

java - 写入数据存储会失败吗?

java - 在执行功能文件之前删除范围报告html文件的方法?

javascript - 如何从客户端的 Firebase 应用程序向我的应用程序引擎发出 http 请求?