如何使用 Java 开始使用 MongoDB。


我们现在生活在一个数据驱动的世界中,我们正在生成如此多的数据,以至于很难使用数据库来管理这些数据。有不同的数据库可用于不同的用例。长期以来,大多数用例都使用关系数据库,但随着技术的进步和现代应用程序的出现,需要更多的可扩展性和多样性,选择正确的数据库变得很重要。这是 No-SQL 数据库之一的用武之地,例如 MongoDB。在本博客中,我们将介绍 MongoDB 以及如何使用 Java 开始使用 MongoDB。

什么是 MongoDB?

MongoDB 是一个开源的非关系型、面向文档的数据库。MongoDB 面向文档意味着它将数据存储在类似文档的 JSON 中,这使其更强大和更具表现力。数据以密钥对值存储在文档中。

MongoDB 的另一个组件是集合,它是文档的集合。Collection对应关系数据库中的Table。

mongodb结构

MongoDB 文档结构。

为什么要使用 MongoDB?

  1. 它是基于文档的,因此在每个文档可以具有不同字段的情况下更加灵活,而这在关系数据库中是无法完成的。
  2. 它允许我们索引文档中的任何字段以改进搜索结果。
  3. 它为我们提供了丰富而强大的查询语言,允许我们使用任何字段进行过滤和排序,无论该字段是如何嵌套的。
  4. 它为我们提供了数据的高可扩展性(分片)和高可用性(复制)。

将 MongoDB 与 Java 结合使用

到目前为止,我们对 MongoDB 以及为什么要使用 Mongo 作为首选数据库有了基本的了解。现在我们将看看如何通过创建一个小型 CRUD 应用程序来使用 Java 与 Mongo 进行交互。

要运行此应用程序,您需要在本地计算机上安装 Mongo 环境。您可以按照此处给出的步骤进行操作。

完成后,让我们开始构建我们的 CRUD 应用程序。

我们需要做的第一件事就是在我们的pom.xml 中\添加 Mongo 依赖项

<dependencies>
     <dependency>
       <groupId>org.mongodb</groupId>
       <artifactId>mongo-java-driver</artifactId>
       <version>3.10.2</version>
     </dependency>
</dependencies>

连接到数据库

假设我们已经完成了项目设置并解决了依赖关系,现在我们将使用 java 连接到 Mongo。

要与 MongoDB 交互,您需要与其建立初始连接。为此,我们将创建一个 MongoClient。它是您的 java 程序和 Mongo 服务器之间的接口。MongoClient 可用于建立连接、连接数据库以及对数据库执行 crud 操作。

String uri = "mongodb://localhost:27017";
MongoClientURI mongoClientURI = new MongoClientURI(uri);
MongoClient mongoClient = new MongoClient(mongoClientURI);

这里的 uri 是localhost:2701 ,它是 MongoDB 实例的默认端口。如果此 Mongo 实例在不同端口上运行,您可以更改此 uri。

创建集合

一旦我们完成了建立连接,现在我们可以创建一个数据库。我们可以通过使用 MongoClient 调用 getDatabase 来创建数据库。

mongoDatabase  mongoDatabase  =  mongoClientgetDatabase ( "CrudDB" );

如果数据库不存在,这将创建一个名为“CrudDB”的新数据库。

要从此数据库中检索文档,我们可以使用 MongoClient 使用 getCollection 方法。

MongoCollection<Document> collection = mongoDatabase.getCollection("testOne");

创建新文档

要创建一个新文档并向其插入值,我们将使用insertOne()方法,该方法将在集合中插入一个文档。您还可以使用insertMany()

将在集合中插入多个文档列表的方法。

Document document = new Document()
    .append("firstName", "Upanshu")
    .append("lastName", "Chaudhary")
    .append("age", "22")
    .append("gender", "Male")
    .append("designation", "Software Consultant");
getCollection().insertOne(document);

从集合中读取数据

我们可以使用find()方法从集合中获取文档。

Document document = getCollection().find().first();
2
System.out.println(document.toJson());

更新数据

我们可以使用updateOne() 方法更新文档,该方法将更新一个文档。

getCollection().updateOne(
eq("firstName", "Upanshu"),
combine(set("age", "23"), set("lastName", "Singh")));
System.out.println("successful");

删除文档

要删除文档,我们可以使用deleteMany()方法。

getCollection ()deleteMany ( eq ( "age" , "22" ));

这些是您可以使用 java 在 MongoDB 上执行的基本 CRUD 操作。您可以自己定义项目结构并为每个操作创建函数。


原文链接:https://codingdict.com/