二十一、MongoDB 实验——java 和 MongoDB
第1关:Java 操作 MongoDB 数据库(一)
任务描述
本关任务:根据编程要求,使用 Java 代码完成 MongoDB 数据库连接、集合的创建、选取和文档插入。
相关知识
为了完成本关任务,你需要掌握:
1.如何连接数据库;
2.如何创建集合;
3.如何获取集合;
4.如何插入文档。
Java 连接数据库
获取 Java 的 Mongodb 驱动包
在 Java 的 MongoDB 驱动包获取网址 下载获取最新版本的驱动包,我已经帮你下载 mongo-java-driver-3.9.1.jar 放在响应环境目录下。
Java 代码连接无密码数据库
通过以下两条代码,进行数据库的连接:
MongoClient mongoClient = new MongoClient("localhost",27020); //启动本地服务,端口号为27020
MongoDatabase mongoDatabase = mongoClient.getDatabase("databaseName"); //连接名为databaseName数据库
编译代码进行数据库连接
此步骤无需操作,平台会完成编译:
javac -cp .:mongo-java-driver-3.9.1.jar Mongoconnect.java
java -cp .:mongo-java-driver-3.9.1.jar Mongoconnect
创建集合
我们可以使用驱动 com.mongodb.client.MongoDatabase 类中的 createCollection() 来创建集合:
mongoDatabase.createCollection("test"); //创建集合test
获取集合
使用驱动 com.mongodb.client.MongoDatabase 类的 getCollection() 方法来获取集合:
MongoCollection<Document> collection = mongoDatabase.getCollection("test"); //获取集合test
插入文档
使用驱动 com.mongodb.client.MongoCollection 类的 insertMany() 方法来插入一个文档:
//注意,在插入文档前,先选好集合再进行操作,选择test集合
MongoCollection<Document> collection = mongoDatabase.getCollection("test");
Document document1 = new Document(); //创建一条文档 document1,以下代码为向文档 document1 中追加数据
document1.append("title", "MongoDB");
document1.append("content", "I love MongoDB").
document1.append("nums", 90).
document1.append("tags", "database");
Document document2 = new Document(); //创建一条文档 document2,以下代码为向文档 document1 中追加数据
document2.append("title", "Java");
document2.append("content", "I love Java").
document2.append("nums", 30).
document2.append("tags", "language");
List<Document> documents = new ArrayList<Document>(); //将以上文档打包存放,为文档插入做准备
documents.add(document1);
documents.add(document2);
collection.insertMany(documents); //插入多条文档到集合中
编程要求
根据提示,在右侧编辑器 Begin-End 中补充代码,将以下文档插入 mydb1 数据库的 test1 集合中。
_id name sex age
1 Xiaoming man 21
测试说明
平台会对你编写的代码进行测试,代码各部分功能成功实现会输出 test1 集合的内容,具体请看测试集。
开始你的任务吧,祝你成功!
答案见《头歌实践教学平台:大数据存储2023(二十一上答案)》
有任何问题都可以随时关注私信!