news 2026/9/4 6:42:35

头歌实践教学平台:大数据存储2023(二十一下)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
头歌实践教学平台:大数据存储2023(二十一下)

二十一、MongoDB 实验——java 和 MongoDB

第2关:Java 操作 MongoDB 数据库(二)

任务描述
本关任务:根据编程要求,使用 Java 代码完成文档的检索(查询)、更新与删除。

相关知识
为了完成本关任务,你需要掌握:
1.如何检索文档;
2.如何更新文档;
3.如何删除文档。

注意:本关示例代码接上一关继续介绍。

检索文档
使用驱动 com.mongodb.client.MongoCollection 类中的 find() 方法来获取集合中的所有文档。

此方法返回一个游标,所以你需要遍历这个游标。

//检索所有文档
/**
* 1. 获取迭代器FindIterable<Document>
* 2. 获取游标MongoCursor<Document>
* 3. 通过游标遍历检索出的文档集合
**/
FindIterable<Document> findIterable = collection.find();
MongoCursor<Document> mongoCursor = findIterable.iterator();
while(mongoCursor.hasNext()){
System.out.println(mongoCursor.next());
}


更新文档
你可以使用 com.mongodb.client.MongoCollection 类中的 updateMany() 方法来更新集合中的文档:

//更新文档:将第一关例子文档中nums=90的文档修改为nums=100
collection.updateMany(Filters.eq("nums", 90), new Document("$set",new Document("nums",100)));


删除文档
要删除集合中的第一个文档,首先你需要使用 com.mongodb.DBCollection 类中的 findOne() 方法来获取第一个文档,然后使用 remove() 方法删除。

//删除符合条件的第一个文档
collection.deleteOne(Filters.eq("nums", 100));
//删除所有符合条件的文档
collection.deleteMany (Filters.eq("nums", 100));

检索文档
使用驱动 com.mongodb.client.MongoCollection 类中的 find() 方法来获取集合中的所有文档。

此方法返回一个游标,所以你需要遍历这个游标。

//检索所有文档
/**
* 1. 获取迭代器FindIterable<Document>
* 2. 获取游标MongoCursor<Document>
* 3. 通过游标遍历检索出的文档集合
**/
FindIterable<Document> findIterable = collection.find();
MongoCursor<Document> mongoCursor = findIterable.iterator();
while(mongoCursor.hasNext()){
System.out.println(mongoCursor.next());
}
更新文档
你可以使用 com.mongodb.client.MongoCollection 类中的 updateMany() 方法来更新集合中的文档:

//更新文档:将第一关例子文档中nums=90的文档修改为nums=100
collection.updateMany(Filters.eq("nums", 90), new Document("$set",new Document("nums",100)));
删除文档
要删除集合中的第一个文档,首先你需要使用 com.mongodb.DBCollection 类中的 findOne() 方法来获取第一个文档,然后使用 remove() 方法删除。

//删除符合条件的第一个文档
collection.deleteOne(Filters.eq("nums", 100));
//删除所有符合条件的文档
collection.deleteMany (Filters.eq("nums", 100));


编程要求
根据提示,在右侧编辑器 Begin-End 中补充代码(请勿删除原有代码框架)。

将以下文档插入 mydb2 数据库的 test2 集合中;
_id name sex age
1 Xiaoming man 21
2 Xiaohong woman 20
3 Xiaoliang man 22
检索 test2 中的所有文档;

更新 Xiaohong 的信息为23岁;

删除 Xiaoliang 的信息。

测试说明
平台会对你编写的代码进行测试,代码各部分功能成功实现会输出相应的的内容,具体请看测试集。

开始你的任务吧,祝你成功!

答案见《头歌实践教学平台:大数据存储2023(二十一下答案)》

有任何问题都可以随时关注私信!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/4 6:41:33

API技术驱动GEO内容生态:新闻发稿平台的底层价值重构

AI搜索时代&#xff0c;内容"被看见"的规则已经改变2025年以来&#xff0c;以ChatGPT、DeepSeek、文心一言、Kimi等为代表的生成式AI搜索引擎&#xff0c;正在重塑互联网信息的分发格局。用户获取信息的方式&#xff0c;从传统的"搜关键词-翻列表-点链接"三…

作者头像 李华
网站建设 2026/9/4 6:41:31

在职人员自考,泉州助学机构筛选参考指南

一、行业痛点泉州众多上班族、个体经营者选择自考提升学历&#xff0c;用于求职跳槽、职称评审、职业资格报考。参考福建自考行业调研数据&#xff0c;考生独自走完备考、报考、实践考核、论文、毕业全部流程&#xff0c;顺利毕业比例不足六成。泉州县域人口基数大&#xff0c;…

作者头像 李华
网站建设 2026/9/4 6:40:55

数学建模国赛倒计时7天——《软件工具(排版)》

文章目录0、引言一、为什么推荐WordPPT&#xff0c;而不是LaTeX或其它软件&#xff1f;二、工具箱一览&#xff08;你都有的&#xff09;三、Word核心排版技能&#xff08;按使用频率排序&#xff09;技能1&#xff1a;样式库&#xff08;最省时间&#xff0c;没有之一&#xf…

作者头像 李华
网站建设 2026/9/4 6:40:53

独立开发者实战指南:从技术选型到项目部署全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/4 6:39:16

贝尔金新款磁吸指环支架11月上市,带吸盘可吸附多平面售价24.99美元

贝尔金新款磁吸指环支架&#xff1a;折叠有短板&#xff0c;吸附有亮点 贝尔金推出的新款紧凑型磁吸指环支架&#xff0c;在折叠状态下&#xff0c;厚度不如 OhSnap 或 PopSockets 的磁吸配件。不过它增加了一个独特的吸盘设计&#xff0c;能将手机吸附在墙壁、镜子、窗户、汽车…

作者头像 李华
网站建设 2026/9/4 6:37:19

肾脏肿瘤语义分割数据集:临床级标注与AI落地实践指南

简介&#xff1a;本资源是面向医学图像分析初学者与算法工程师的肾脏肿瘤语义分割专用数据集&#xff0c;聚焦临床辅助诊断场景下的器官与病灶像素级定位任务&#xff0c;适用于U-Net、Swin-Unet、TransUnet等主流分割模型的训练与验证。压缩包共2000个文件&#xff0c;主体为1…

作者头像 李华