Mongo/Morphia 查询整个文档
Mongo/Morphia querying for entire document
我运行以下Mongo客户端命令:
db.Role.insert(
{
name: "Common",
alias: "COMMON",
description: "Common role"
}
);
这就成功了。然后在我的 JVM 应用程序(使用 Mongo/Morphia 1.0.1)中,我 运行 以下命令:
System.out.println(datastore.find(Role.class)
.field("alias").equal("COMMON").toString())
将以下内容打印到控制台:
{"alias": "COMMON"}
所以我的查询似乎只在我的 Role
集合中查询 字段,键为“alias
”,值为“ COMMON
”。 但我不想要这个!我想要一个查询 return 整个 "Common" Role
文档(作为 JSON 字符串,未映射到 POJO)。有什么想法吗?
Morphia 的行为是 return 完整对象。如果您不想将它们包含在结果中,则需要明确 ignore fields。
你的.toString()
是否包括所有属性?
您确定要加载此文档吗?也许还有另一个 alias: "COMMON"
?
您缺少 .get()
(或 .asList()
,如果有多个):
System.out.println(datastore.find(Role.class)
.field("alias").equal("COMMON").get().toString())
我运行以下Mongo客户端命令:
db.Role.insert(
{
name: "Common",
alias: "COMMON",
description: "Common role"
}
);
这就成功了。然后在我的 JVM 应用程序(使用 Mongo/Morphia 1.0.1)中,我 运行 以下命令:
System.out.println(datastore.find(Role.class)
.field("alias").equal("COMMON").toString())
将以下内容打印到控制台:
{"alias": "COMMON"}
所以我的查询似乎只在我的 Role
集合中查询 字段,键为“alias
”,值为“ COMMON
”。 但我不想要这个!我想要一个查询 return 整个 "Common" Role
文档(作为 JSON 字符串,未映射到 POJO)。有什么想法吗?
Morphia 的行为是 return 完整对象。如果您不想将它们包含在结果中,则需要明确 ignore fields。
你的.toString()
是否包括所有属性?
您确定要加载此文档吗?也许还有另一个 alias: "COMMON"
?
您缺少 .get()
(或 .asList()
,如果有多个):
System.out.println(datastore.find(Role.class)
.field("alias").equal("COMMON").get().toString())