总的来说,如果学过Java中的Springboot组件之后,你会发现node连接mysql也是很容易理解的
第一步:下载mysql数据库组件
npm i mysql
第二部:创建数据库连接
在项目根目录中新建 db/index.js 文件,在此自定义模块中创建数据库的连接对象:
//1、导入mysql数据库组件
const mysql = require('mysql')
//2、创建mysql数据库信息
const db = mysql.createConnection({
//要连接到的数据库的主机名
host : 'localhost',
//数据库账号
user : 'root',
//数据库密码
password : '123456',
//连接的数据库的名称
database : 'my_db'
});
//3、导出数据库
module.exports = db
第三步:例子测试
比如:用户登录
1、在routes文件夹下创建UserRouter.js文件
//导入express模块
const express = require('express')
//创建路由
const UserRouter = express.Router()
//导入控制层
const UserController = require('../controller/UserController.js')
//创建登录接口
UserRouter.post('/api/login',UserController.login)
//导出路由
module.exports = UserRouter
2、在controller文件夹下创建UserController.js文件
//导出数据库
const db = require('../db/index')
//创建控制层
const UserController = {
login: async (req,res)=>{
//结构赋值
const {username,password} = req.body
//定义查询语句
const sql = 'select * from ev_users where username=? and password=?'
//执行sql语句
db.query(sql,[username,password],(err,result)=>{
if(err) return res.send({status:1,message:err.message})
if(result.length === 0) return res.send({status:1,message:'用户名或密码错误'})
res.send({status:0,message:'登录成功'})
})
}
}
//导出用户控制层
module.exports = UserController
3、在app.js中注册使用UserRouter路由
//导入UserRouter路由
const UserRouter = require('../routes/UserRouter')
//注册使用UserRouter路由
app.use(UserRouter)
此处中间省略了express创建web服务器app的代码
4、启动服务器测试
总结:
如果使用的是mysql数据库,什么路由都是分这三个步骤
1、创建路由
2、创建控制层,执行什么操作
3、全局注册使用路由
这是我自己学习总结下来的,如果有哪里不对的,请各位大佬评论指正出来
如果不行请看npm包管理器中的例子,连接如下