封装Node+MySQL简易脚手架

封装一个自己的 基于express-mysql的脚手架 方便使用 大佬勿喷
主要封装了数据库长连接,静态资源库,路由

  1. 项目结构
    封装Node+MySQL简易脚手架_第1张图片
  2. 数据库长连接配置
    将数据库连接对象抛出,避免重复连接
const conncetion = () =>{
    //1.引入mysql模块
    const mysql  = require('mysql');
    //2.创建数据库连接
    const db = mysql.createConnection({
        host:'127.0.0.1',
        user:"root",
        password:"gqgq123123",
        database:"blog",
        port:"3306"
    });
    //3.连接数据库
    db.connect(()=>{
        console.log('数据库 blog 连接成功!');
    });
    //4.将连接对象抛出
    return db;
}
module.exports = conncetion();
  1. 项目入口文件配置
const express = require('express');
const app = express();
const cors = require('cors');
//使用cors中间件
app.use(cors());
//json支持
app.use(express.json());


//链接数据库 获得连接对象
const db = require('./db');

//通过立即执行函数 导入api文件并运行
(require('./router/api'))(app,db);


//静态资源库
app.use('/static',express.static(__dirname + '/static'));
app.listen(2666,()=>{
    console.log("端口:2666,服务启动成功!")
});

  1. 路由配置
module.exports = (app,db) => {
    //引入router
    const express = require('express');
    const router = express.Router();
    //测试接口
    router.get("/test",(req,res)=>{
        //数据库查询
        db.query(`select * from user`,(err,docs)=>{
            if(err){ 
                console.log(err);
                return;
            }
            res.send(docs);
        })
    });
    //挂载router
    app.use("/api",router);
};

  1. 启动服务器
    在这里插入图片描述
  2. 接口测试
    封装Node+MySQL简易脚手架_第2张图片
    我在开发里常用的几块就配置完了0.0 配置得比较粗糙,还可以配置一些其他中间件,这里就不做了,按项目需求来就可以了。

你可能感兴趣的:(封装Node+MySQL简易脚手架)