记录一下之前学习原生node写的代码,记录一下查资料加网课自己学习写的接口,没用框架,把代码包装成promise返回
目录结构
需要使用的mysql语句
个人环境
cross-env适配环境,nodemon热部署
{
"name": "project",
"version": "1.0.0",
"description": "",
"main": "app.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"dev": "cross-env NODE_ENV=dev nodemon ./app.js",
"prd": "cross-env NODE_ENV=production nodemon ./index.js"
},
"author": "",
"license": "ISC",
"dependencies": {
"mysql": "^2.18.1"
},
"devDependencies": {
"@types/express": "^4.17.13",
"@types/node": "^17.0.32",
"cross-env": "^7.0.3",
"nodemon": "^2.0.16"
}
}
mysql配置 config.js
let MYSQL_CONF
const env = process.env.NODE_ENV
//获取现在的进程环境
if (env === 'dev') {
MYSQL_CONF = {
host: 'localhost',
port: 3306,
user: 'root',
password: 'xxx',
database: 'blog'
}
}
if (env === 'production') {
MYSQL_CONF = {
host: 'localhost',
port: 3306,
user: 'root',
password: 'xxx',
database: 'blog'
}
}
module.exports = MYSQL_CONF
- 用promise封装mysql的连接池
mysql.js
const mysql = require('mysql'); //引入mysql
const MYSQL_CONF = require('./config') //引入配置
//创建连接池
const pool = mysql.createPool(MYSQL_CONF);
function exec(sql, params = []) {
return new Promise((resolve, reject) => {
pool.getConnection(function(err, conn) {
if (err) {
console.log('连接失败');
return
}
console.log('连接成功');
conn.query(sql, params, (err, result) => {