📜  Java中的 MongoDB 教程(1)

📅  最后修改于: 2023-12-03 15:16:25.216000             🧑  作者: Mango

Java中的 MongoDB 教程

MongoDB 是一个流行的开源文档数据库,可以在 Java 中使用它作为数据存储解决方案。本教程将向您介绍如何在 Java 中使用 MongoDB。

1. 安装 MongoDB

首先,您需要在您的计算机上安装 MongoDB。MongoDB 的安装步骤因操作系统而异,请确保您已详细阅读安装说明。在安装过程中,您需要创建一个用户帐户和密码来访问 MongoDB,这将在之后的步骤中用到。

2. 添加 MongoDB Java 驱动程序

接下来,您需要添加 MongoDB 的 Java 驱动程序依赖项。您可以将以下代码添加到 Maven 依赖项中:

<dependency>
    <groupId>org.mongodb</groupId>
    <artifactId>mongodb-driver-sync</artifactId>
    <version>4.0.5</version>
</dependency>
3. 连接 MongoDB

您需要使用 Java 驱动程序连接 MongoDB 数据库。在以下示例中,我们将使用 MongoDB 默认端口(27017)和“test”数据库:

import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoDatabase;

public class MongoDBConnect {
    public static void main(String[] args) {

        // 连接到 MongoDB
        MongoClient mongoClient = MongoClients.create("mongodb://username:password@localhost:27017/?authSource=test");

        // 连接到名为“test”的数据库
        MongoDatabase database = mongoClient.getDatabase("test");

        System.out.println("Database connected successfully!");
    }
}

在代码中,MongoClients.create() 方法使用您在 MongoDB 中创建的用户名和密码进行身份验证。如果您未设置身份验证,则忽略 URL 中的用户名和密码。测试连接之前,请确保启动 MongoDB 服务器。

您现在已连接到 MongoDB 数据库!接下来,您将学习如何在 Java 中读取和写入数据。

4. 写入数据

要将数据写入 MongoDB 数据库,您需要创建一个 Document 并将其插入到集合中。以下示例演示如何将一些数据插入名为“users”的集合中:

import org.bson.Document;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;

public class MongoDBWrite {
    public static void main(String[] args) {

        // 连接到 MongoDB
        MongoClient mongoClient = MongoClients.create("mongodb://username:password@localhost:27017/?authSource=test");

        // 连接到名为“test”的数据库
        MongoDatabase database = mongoClient.getDatabase("test");

        // 获取名为“users”的集合
        MongoCollection<Document> collection = database.getCollection("users");

        // 创建一个 Document
        Document user = new Document("name", "John Doe")
                .append("email", "john.doe@example.com")
                .append("age", 30);

        // 向集合中插入 Document
        collection.insertOne(user);

        System.out.println("Document inserted successfully!");
    }
}

在上面的示例中,我们创建了一个名为“users”的集合并将 Document 插入其中。您可以在此处添加其他字段和值以获取更具有表现力的文档。

5. 读取数据

要从 MongoDB 集合中读取数据,您需要查询它们。以下示例演示如何读取 names 为“John Doe”的用户:

import org.bson.Document;
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoCursor;
import com.mongodb.client.MongoDatabase;
import static com.mongodb.client.model.Filters.*;

public class MongoDBRead {
    public static void main(String[] args) {

        // 连接到 MongoDB
        MongoClient mongoClient = MongoClients.create("mongodb://username:password@localhost:27017/?authSource=test");

        // 连接到名为“test”的数据库
        MongoDatabase database = mongoClient.getDatabase("test");

        // 获取名为“users”的集合
        MongoCollection<Document> collection = database.getCollection("users");

        // 从集合中查找名为“John Doe”的用户
        FindIterable<Document> results = collection.find(eq("name", "John Doe"));

        // 打印结果
        try (MongoCursor<Document> cursor = results.iterator()) {
            while (cursor.hasNext()) {
                System.out.println(cursor.next());
            }
        }
    }
}

在上面的示例中,我们从“users”集合中查找名为“John Doe”的用户。运行这段代码将输出所有匹配的用户文档。

结论

在 Java 中使用 MongoDB 可以使您的数据存储解决方案更加灵活,更易于扩展。本教程介绍了如何在 Java 中连接 MongoDB 并执行一些基本操作。开始使用它来构建更好的应用程序吧!