Express 面试题
目录

Express 如何与数据库交互?

· 约 4 分钟读完 · 第 95 / 120 章

推荐答案

在 Express 中与数据库交互通常通过以下步骤实现:

  1. 选择数据库驱动或 ORM:根据项目需求选择合适的数据库驱动(如 mysql2、pg 等)或 ORM(如 Sequelize、TypeORM 等)。
  2. 安装依赖:使用 npm 或 yarn 安装所需的数据库驱动或 ORM 包。
  3. 配置数据库连接:在 Express 应用中配置数据库连接信息,如主机、端口、用户名、密码等。
  4. 编写数据库操作代码:在路由处理函数中编写数据库查询、插入、更新、删除等操作的代码。
  5. 处理数据库操作结果:将数据库操作的结果返回给客户端或进行进一步处理。

以下是一个使用 mysql2 驱动与 MySQL 数据库交互的示例:

本题详细解读

1. 选择数据库驱动或 ORM

在 Express 中与数据库交互时,首先需要选择合适的数据库驱动或 ORM。数据库驱动是直接与数据库进行通信的库,而 ORM(对象关系映射)则提供了更高层次的抽象,允许开发者使用面向对象的方式来操作数据库。

  • 数据库驱动:如 mysql2、pg(PostgreSQL)、mongodb(MongoDB)等。
  • ORM:如 Sequelize(支持多种数据库)、TypeORM(TypeScript 优先的 ORM)、Mongoose(MongoDB 的 ODM)等。

2. 安装依赖

使用 npm 或 yarn 安装所需的数据库驱动或 ORM 包。例如,安装 mysql2:

3. 配置数据库连接

在 Express 应用中配置数据库连接信息。通常包括主机、端口、用户名、密码、数据库名称等。对于 MySQL,可以使用 mysql2 提供的 createPool 方法创建连接池,以提高性能和资源利用率。

4. 编写数据库操作代码

在路由处理函数中编写数据库操作的代码。例如,查询用户信息的路由:

5. 处理数据库操作结果

数据库操作的结果通常是一个数组或对象,可以通过 res.json() 方法将其返回给客户端。如果操作失败,可以返回适当的错误信息。

通过以上步骤,Express 应用可以与数据库进行交互,实现数据的增删改查等操作。