使用 Express.js 和 MongoDB 实现 CRUD 操作的教程

阅读时长 5 分钟读完

简介

在 Web 开发过程中,我们需要与数据库进行交互,经常需要实现 CRUD(Create, Read, Update, Delete)操作。这篇文章将介绍如何使用 Express.js 和 MongoDB 实现 CRUD 操作。

环境准备

在开始之前,我们需要安装以下工具:

  • Node.js
  • MongoDB

确保这些工具已经正确安装,并且能够在命令行中使用。

安装 Express.js

在命令行中输入以下命令,安装 Express.js:

Express.js 是一个基于 Node.js 平台的 Web 应用程序开发框架。它提供了方便的路由、中间件和视图系统,使 Web 开发变得更加容易。

安装 MongoDB

在命令行中输入以下命令,安装 MongoDB:

MongoDB 是一个 NoSQL 数据库系统,它使用文档来存储数据。它是一个快速、灵活、可扩展的数据库系统,提供了丰富的查询语言和数据操作方式。

实现

连接数据库

在我们开始实现 CRUD 操作之前,我们需要先连接 MongoDB 数据库。在项目根目录下新建一个 db.js 文件,添加以下代码:

-- -------------------- ---- -------
----- ------- - -------------------

----- --- - ---------------------------------

----- ------- - ----- -- -- -
  ----- ------ - ----- -------------------- -
    ---------------- -----
    ------------------- ----
  ---

  ------ ------------
--

-------------- - --------

这里我们使用 mongodb.connect 方法来连接 MongoDB 数据库。接着将连接对象中的数据库实例返回,以便在其他地方使用。

新建数据

在 Express.js 中,我们需要使用路由来处理 HTTP 请求。在项目根目录下新建一个 routes.js 文件,添加以下代码:

-- -------------------- ---- -------
----- ------- - -------------------
----- ------- - ----------------

----- ------ - -----------------

------------------- ----- ----- ---- -- -
  ----- -- - ----- ----------
  ----- ------ - ----- ----------------------------------------------
  ------------------------
---

-------------- - -------

这里我们定义了一个 POST 路由 /new,用来处理新建数据的操作。我们首先通过 await connect() 方法获取到 MongoDB 数据库的实例对象 db,再调用 db.collection 方法获取到 articles 集合。

接着,我们使用 insertOne 方法向数据库中插入一条数据,并将插入的结果通过 res.json 方法返回给前端。

查询数据

我们还需要查询已经保存在数据库中的数据,同样在 routes.js 文件中添加一个 GET 路由 /articles

这里我们使用 find 方法查询 articles 集合中的所有文档,并最终将查询结果通过 res.json 方法返回。

更新数据

更新数据需要使用 PUT 方法,我们在 routes.js 文件中添加 PUT 路由 /update/:id

-- -------------------- ---- -------
------------------------- ----- ----- ---- -- -
  ----- -- - ----- ----------
  ----- - -- - - -----------
  ----- - ------- - - ---------
  ----- ------ - ----- ------------------------------------
    - ---- -------------------- --
    - ----- - ------- - -
  --
  -------------------------------
---

这里我们使用 updateOne 方法更新指定 id 的文档内容。首先通过 req.params 获取到路由参数 id,然后通过 req.body 获取到要更新的文档内容 content

删除数据

最后是删除数据操作,我们在 routes.js 文件中添加 DELETE 路由 /remove/:id

这里我们使用 deleteOne 方法删除指定 id 的文档。

总结

本文介绍了如何使用 Express.js 和 MongoDB 实现 CRUD 操作,包括连接数据库、新建数据、查询数据、更新数据、删除数据。这些操作难度较低,但对于前端工程师来说,学习和掌握这些操作仍然是很有意义的。示例代码见下方。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/659f8432add4f0e0ff81a282

纠错
反馈