Node.js + Express + MySQL搭建后端环境

在Web开发中,搭建一个强大可靠的后端环境是至关重要的。Node.js作为一个基于事件驱动的异步Javascript运行时,逐渐成为了构建高性能后端环境的首选。结合Express框架和MySQL数据库,我们能够快速构建出功能完善的后端应用。

本文将介绍如何使用Node.js、Express和MySQL搭建后端环境,并提供相应的代码示例。

安装Node.js

首先,我们需要在本地安装Node.js。你可以从[Node.js官网](

安装完成后,可以在命令行终端中输入以下命令来验证Node.js是否安装成功:

node -v

如果能正确显示Node.js的版本号,说明安装成功。

初始化项目

接下来,我们需要初始化一个新的Node.js项目。在命令行终端中,进入你要创建项目的目录,然后执行以下命令:

mkdir myapp
cd myapp
npm init

上述命令将在当前目录下创建一个名为myapp的文件夹,并在该文件夹中初始化一个新的Node.js项目。在初始化过程中,你需要回答一些关于项目的问题,可以根据自己的需求进行选择。

完成初始化后,你将在myapp目录下看到一个名为package.json的文件,它是项目的配置文件。

安装Express

在项目目录中,执行以下命令来安装Express框架:

npm install express --save

上述命令将在项目的package.json文件中添加Express的依赖,并将Express安装到node_modules文件夹中。

创建Express应用

接下来,我们将创建一个简单的Express应用。在项目目录下,新建一个名为app.js的文件,并在其中编写以下代码:

const express = require('express');
const app = express();

app.get('/', (req, res) => {
  res.send('Hello World!');
});

app.listen(3000, () => {
  console.log('App listening on port 3000');
});

上述代码使用require语句引入了Express模块,并创建了一个Express应用。app.get方法定义了一个处理GET请求的路由,当访问根路径'/'时,服务器会返回'Hello World!'的内容。

最后,app.listen方法启动了一个HTTP服务器,监听3000端口。当服务器成功启动后,控制台会输出'App listening on port 3000'

启动Express应用

在命令行终端中,进入项目目录,执行以下命令来启动Express应用:

node app.js

如果一切顺利,你将看到控制台输出'App listening on port 3000'。此时,你可以在浏览器中访问http://localhost:3000,看到显示'Hello World!'的页面。

连接MySQL数据库

在使用Express开发后端应用时,经常需要与数据库进行交互。MySQL是一种常用的关系型数据库,我们可以使用Node.js的MySQL驱动来连接MySQL数据库。

在项目目录中,执行以下命令来安装MySQL驱动:

npm install mysql --save

然后,修改app.js文件的内容,添加数据库连接和查询的代码:

const express = require('express');
const app = express();
const mysql = require('mysql');

const connection = mysql.createConnection({
  host: 'localhost',
  user: 'root',
  password: 'password',
  database: 'mydb'
});

connection.connect((err) => {
  if (err) {
    console.error('Error connecting to database');
    return;
  }
  console.log('Connected to database');
});

app.get('/', (req, res) => {
  connection.query('SELECT * FROM users', (err, results) => {
    if (err) {
      console.error('Error executing query');
      return;
    }
    res.send(results);
  });
});

app.listen(3000, () => {
  console.log('App listening on port 3000');
});

上述代码