Node.js + Express 连接 Mysql 数据库
1、目录结构
2、先在根目录下创建 db.config.js 和 db.js 文件
2.1 、db.config.js 配置数据库的信息,导出一个模块信息
module. exports = {
host : 'localhost' ,
port : '3000' ,
user : 'root' ,
password : '123' ,
database : 'app'
}
2.2 、db.js 配置连接数据库的信息,导出一个模块信息
const mysql = require ( 'mysql' ) ;
const dbConfig = require ( './db.config' ) ;
module. exports = {
query : function ( sql, params, callback ) {
const connection = mysql. createConnection ( dbConfig) ;
connection. connect ( function ( err ) {
if ( err) {
console. log ( 'mysql数据库链接失败' ) ;
throw err;
}
connection. query ( sql, params, function ( err, results, fields ) {
if ( err) {
console. log ( 'mysql数据操作失败' ) ;
throw err;
}
callback && callback ( JSON . parse ( JSON . stringify ( results) ) , JSON . parse ( JSON . stringify ( fields) ) ) ;
connection. end ( function ( err ) {
if ( err) {
console. log ( 'mysql关闭数据库连接失败!' ) ;
throw err;
}
} ) ;
} ) ;
} ) ;
}
} ;
3、在 route > index.js 下面
var express = require ( 'express' ) ;
var router = express. Router ( ) ;
const { userLoginServe
} = require ( '../service/users/index' )
router. get ( '/' , async function ( req, res, next ) {
res. send ( await userLoginServe ( ) )
} ) ;
module. exports = router;
4、在 service > users > index.js 下面
const {
userLoginDao
} = require ( '../../dao/users/usersDao.js' )
module. exports. userLoginServe = async function ( obj ) {
return await userLoginDao ( obj) ;
}
5、在 dao > users > usersDao.js 下面
const db = require ( "../../db" ) ;
module. exports. userLoginDao = async function ( obj ) {
db. query ( "SELECT * FROM tablename" , [ ] , function ( results, fields ) {
console. log ( results) ;
return JSON . stringify ( results)
} )
}
总结:然后就连接成功啦,我的目录结构是为了处理数据创建的,要是想要简单的连接,可以就写在一个文件里面,如果小伙伴们按照我这个来的话,就需要先创建下文件,有什么问题,随时联系博主哦