Node.js 成为了前端开发中不可或缺的一部分,而其中一个重要的组成部分就是 Express.js。Mongoose 是一种流行的 Node.js 模块,它可以简化与 MongoDB 的交互。在本文中,我们将学习如何在 Express.js 中使用 Mongoose,来实现 MongoDB 数据库的增删改查。
环境设置
在开始开发之前,确保以下环境已经安装:
- Node.js
- MongoDB
- Express.js
- Mongoose
安装完成后,请在项目目录下运行以下命令来安装所需的依赖项:
npm install express mongoose
建立数据库连接
接下来的关键是建立数据库连接。首先,我们需要在应用程序中引入 mongoose 模块并使用它来建立数据库连接。以下是创建连接的示例代码:
const mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/myapp', { useNewUrlParser: true, useUnifiedTopology: true });
在上面的代码中,我们建立了一个名为”myapp”的 MongoDB 数据库连接。这里的“mongodb://localhost/”可以替换为您的 MongoDB 服务器的主机名和端口号。注意,连接选项对象实际上是非必需的,但是很多时候我们需要使用某些选项来确保连接以正确的方式打开。
定义模型和模式
在建立数据库连接后,我们需要定义 MongoDB 中的模型和模式。这些模型和模式是 Mongoose 与 MongoDB 交互的核心。以下是一个简单的模式和模型:
-- -------------------- ---- ------- ----- -------- - -------------------- ----- ------ - ---------------- ----- ---------- - --- -------- ----- ------- ------ ------- ------------ ------- --- ----- ---- - ---------------------- ------------
在上面的代码中,我们定义了一个名为“Item”的模型,它将拥有三个属性:name、price 和 description。请注意,每个属性都有与之关联的数据类型。在这个例子中,我们使用了 String、Number 和 String 来定义属性。
CRUD 操作
创建
使用以下代码可以创建一个新文档:
-- -------------------- ---- ------- ----- ------- - --- ------ ----- -------- ------ ----- ------------ -- --------- --- -------- --- -------------------------- - -- ----- - ----------------- - ---- - ----------------- ----- ---------------- - ---
在上面的代码中,我们创建了一个新文档,将其保存到数据库中,保存成功后控制台将输出”Item saved successfully!”。
读取
以下代码将从数据库中获取文档并将其打印到控制台:
Item.find(function(err, items) { if (err) throw err; console.log(items); });
在上面的代码中,我们使用 Item.find() 方法从数据库中检索 Document 列表,如果检索存在错误,则将其抛出。
更新
使用以下代码可以更新文档:
Item.findOneAndUpdate({ name: 'Apple' }, { price: 3.00 }, function(err, item) { if (err) throw err; console.log(item); });
在上面的代码中,我们使用 findOneAndUpdate() 方法来查找和更新文档。在上述代码中,我们找到具有给定名称的文档,并将价格更新为 3.00。请注意,此方法返回更新后的文档和任何错误对象。
删除
使用以下代码可以删除文档:
Item.findOneAndRemove({ name: 'Apple' }, function(err, item) { if (err) throw err; console.log(item); });
在上面的代码中,我们使用 findOneAndRemove() 方法来查找和删除文档。在上述代码中,我们找到具有给定名称的文档,并且将其从数据库中删除。
总结
在本文中,我们学习了如何使用 Express.js 和 Mongoose 来与 MongoDB 数据库进行简单的 CRUD 操作。我们了解了如何设置数据库连接、定义模型和模式以及如何执行各种操作。现在,您已经掌握了这些概念,可以尝试使用它们来构建更复杂的应用程序。这将为您提供许多有用的工具和技术,可用于开发 Node.js 和 MongoDB 应用程序。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64f29761f6b2d6eab3c385ff