java - AppEngine - 列表字段上的 JDO 查询

标签 java google-app-engine google-cloud-datastore jdo

我正在使用 AppEngine for Java,并且我有一个定义如下的 JDO 实体:

Quote
| id(Long) | quote(String) | author(String) |

我意识到我的引用可能来自多个作者,以防我想捕获简短的讨论,所以我需要从简单的 String 更改作者。到 List<String> .

我似乎明白我现在可以使用 IN 运算符而不是标准 == 来按单个(或多个)作者进行查询,如下所示:

Query q = _pm.newQuery(Quote.class);
//q.setFilter("author == authorParam");
q.setFilter("author IN [authorParam]");
q.declareParameters("String authorParam");

这可以与 Java SDK 一起使用吗?

最佳答案

从什么时候开始“IN”成为 JDOQL 关键字? JDOQL 与 Java 共享语法,因此使用 {collectionObj}.contains(Object) 是所有有关该主题的文档所说的内容,其中 collectionObj 可以是输入集合参数

关于java - AppEngine - 列表字段上的 JDO 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14016065/

相关文章:

java - Primefaces p :fileDownload with datatable

java - 如何在Android上排列卡片?

google-app-engine - Google App Engine 通配符子域

java - Google Datastore - 更新实体时出现问题

google-app-engine - 类型比较时编译错误

python - Google 数据存储 : ndb. put_multi 未返回

java - 任何人都可以指导在 Spring MVC 中生成 UUID 然后发送确认链接

java - 如何使用 Java 将 INT32 打包到我的 MessagePack 中?

python - Google 应用引擎 - 订购列出的项目

python-2.7 - 使用数组执行 NDB IN 查询