Express 操作 MongoDB 数据库

概述

MongoDB 是一种基于文档的 NoSQL 数据库,经常被用于数据存储和处理。Express 是一种流行的 Node.js Web 框架,能够帮助我们快速开发 Web 应用程序。本文将介绍使用 Express 操作 MongoDB 数据库的方法,包括数据库连接、CRUD 操作等。

数据库连接

在使用 MongoDB 前,需要先安装 MongoDB 数据库。安装完成后,可以使用 mongoose 这个 Node.js 的 ORM 库来连接数据库。首先需要在项目的根目录下安装 mongoose

然后在 Express 的入口文件中引入 mongoose 并进行数据库连接:

const mongoose = require('mongoose');

mongoose.connect('mongodb://localhost:27017/my_database', {
  useNewUrlParser: true,
  useUnifiedTopology: true
});

在上述代码中,localhost 表示 MongoDB 数据库所在的主机名,27017 是 MongoDB 的默认端口号,my_database 是要连接的数据库名称。useNewUrlParseruseUnifiedTopology 参数用来避免一些警告信息。连接成功后,可以输出一条提示信息:

const db = mongoose.connection;
db.on('error', () => console.error('MongoDB connection error:'));
db.once('open', () => console.log('MongoDB connection successful'));

CRUD 操作

在连接 MongoDB 后,就可以使用 mongoose 来进行 CRUD 操作了。下面给出几个常用的例子:

创建数据

const Schema = mongoose.Schema;

const userSchema = new Schema({
  name: String,
  age: Number,
  email: String
});

const User = mongoose.model('User', userSchema);

const user = new User({
  name: 'test',
  age: 18,
  email: 'test@example.com'
});

user.save((err) => {
  if (err) {
    console.error(err);
  } else {
    console.log('User created');
  }
});

在上述代码中,首先定义了一个 user 数据模型,然后创建一个实例,最后使用 save 方法将数据保存到数据库中。

读取数据

User.find({}, (err, users) => {
  if (err) {
    console.error(err);
  } else {
    console.log(users);
  }
});

在上述代码中,使用 find 方法查询所有数据。

更新数据

User.updateOne({ name: 'test' }, { age: 19 }, (err) => {
  if (err) {
    console.error(err);
  } else {
    console.log('User updated');
  }
});

在上述代码中,使用 updateOne 方法更新数据,第一个参数是更新条件,第二个参数是要更新的值。

删除数据

User.deleteOne({ name: 'test' }, (err) => {
  if (err) {
    console.error(err);
  } else {
    console.log('User deleted');
  }
});

在上述代码中,使用 deleteOne 方法删除数据,第一个参数是删除条件。

总结

本文介绍了使用 mongoose 在 Express 中操作 MongoDB 数据库的方法,包括数据库连接和 CRUD 操作。熟练掌握这些技巧,可以帮助开发者快速地构建 Web 应用程序。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65a9f368add4f0e0ff36e456