java - 如何从子文档中获取数据

标签 java mongodb nosql

嗨,我对 MongoDB 总体来说是新手,但在 Java 方面经验丰富。

我现在正在尝试通过 java 应用程序从我的 MongoDB 获取数据,但我在从子文档检索数据时遇到问题,并且希望获得一些帮助来了解它的工作原理以及如何操作。

编辑

测试代码,为我提供团队名称。

BasicDBObject queryTeam = new BasicDBObject("team", team);
FindIterable<Document> foundTeam = db.getCollection("teams").find(queryTeam);      
MongoCursor<Document>     cursor = foundTeam.iterator();

while(cursor.hasNext())
{
    Document tmp = cursor.next();
    return tmp.get("team").toString();
}

我有兴趣了解谁雇佣了球队中的特定球员的信息。球员位于子文档中并具有一些属性(请参阅 imgur 链接)。 我有兴趣获得hiredBy属性,我的问题是我如何在java中做到这一点?

集合结构:/image/NzG1k.jpg

为您提供轻松创建集合布局的提示:http://www.jsoneditoronline.org/

解决方案

 DistinctIterable<Document> players = db.getCollection("teams").distinct("Players", Document.class);

返回所有玩家,我可以在 java 中查看它们,看看是谁创建了它们。

版主可以将此问题标记为已解决。问题的解决方法如上。

最佳答案

子文档是什么意思?您能发布一个您的集合和文档结构的示例吗?

编辑:由于某种原因,我无法对您的帖子添加评论。因此,暂时将此答案视为评论。

关于java - 如何从子文档中获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41075194/

相关文章:

java - 未定义数据类型的 SQL 插入语句

java - JBoss 在 war 文件中使用 @WebService 和 @Stateless 时忽略 application.xml 中的上下文路径

java - 缺少 Artifact com.sun :tools:jar

java - Java 中的替换模式

python - 如何迭代网站scrapy

mongodb - 插入 meteor 集合时出错

node.js - 未处理的 promise 拒绝警告 : MongooseServerSelectionError: connect ECONNREFUSED 127. 0.0.1:27017

nosql - Couchbase:如何根据子值从列表中删除项目?

Mongodb:从数组中查找和更新对象属性

.net - 可以在 Windows 上运行并具有 .Net 客户端的分布式键/值存储?