nodejs+express最简易的连接数据库的方法


Posted in NodeJs onDecember 23, 2020

环境搭建

1.首先需要自行安装node环境

2.然后全局安装 express

npm install -g express

3.创建express项目文件夹

express创建项目默认为jade模板引擎,若使用其他引擎,使用命令切换

express node_demo -e (选择ejs模板) // 在项目名称的后面添加 -e 那么创建出来的模板文件就是.ejs类型,语法是与html相同的

nodejs+express最简易的连接数据库的方法

在vscode中打开我们建好的项目,目录如下:

nodejs+express最简易的连接数据库的方法

对于ejs看着不习惯的同学可以将其改为html,如下:

nodejs+express最简易的连接数据库的方法

然后还需要将在views新建一个index.html 与error.html 内容如下 index.html

nodejs+express最简易的连接数据库的方法 

error.html

nodejs+express最简易的连接数据库的方法

安装依赖 npm install

启动项目 npm start

监听bin/www文件,默认端口为3000,可在www文件中更改, 打开浏览器,输入localhost:3000

这时我们就可以看到页面显示的内容是index.html 里面定义的内容了

nodejs+express最简易的连接数据库的方法

因为每次修改都需要重新启动,比较麻烦,这里有个插件nodemon,可以自动重启

npm install nodemon

将package.json文件中的代码修改为:

"start": "nodemon ./bin/www"

连接MySQL数据库

先安装mysql

npm install mysql 2.然后封装数据库连接模块,我们在根目录下新建一个conf文件夹, 新建一个db.config.js,与db.js 内容如下:

// db.config.js
// 创建mysql连接
module.exports = {
 host: 'localhost', // 服务器地址
 user: '*****', // mysql用户名称
 password: '**********', // mysql用户密码
 port: '3306', // 端口
 database: 'onepiece', // 数据库名称
}
// db.js 
var mysql = require('mysql')
var dbConfig = require('./db.config')

module.exports = {
 query: function (sql, params, callback) {
  //每次使用的时候需要创建链接,数据操作完成之后要关闭连接
  var connection = mysql.createConnection(dbConfig)
  connection.connect(function (err) {
   if (err) {
    throw err
   }
   //开始数据操作
   connection.query(sql, params, function (err, results, fields) {
    if (err) {
     throw err
    }
    //将查询出来的数据返回给回调函数
    callback &&
     callback(
      JSON.parse(JSON.stringify(results)),
      JSON.parse(JSON.stringify(fields))
     )
    //停止链接数据库,必须在查询语句后,要不然一调用这个方法,就直接停止链接,数据操作就会失败
    connection.end(function (err) {
     if (err) {
      console.log('关闭数据库连接失败!')
      throw err
     }
    })
   })
  })
 },
}

然后我们可以在routes 目录下的users文件中添加如下代码:

var db = require('../conf/db')

router.get('/userList', (req, res, next) => {
 // sql查询user表
 db.query('SELECT * FROM user', [], function (results, fields) {
  // 以json的形式返回
  res.json({ results })
 })
})

打开浏览器访问 http://localhost:3000/users/userList

nodejs+express最简易的连接数据库的方法

这样一个nodejs+express连接数据库就简单的完成了

后记

安装Navicat Premium

下载地址:https://3water.com/database/703548.html

安装MySQL

下载地址:https://3water.com/softs/38849.html

到此这篇关于nodejs+express最简易的连接数据库的方法的文章就介绍到这了,更多相关node express 连接数据库内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

NodeJs 相关文章推荐
NodeJS学习笔记之Connect中间件模块(二)
Jan 27 NodeJs
nodejs 整合kindEditor实现图片上传
Feb 03 NodeJs
nodejs如何获取时间戳与时间差
Aug 03 NodeJs
浅谈Nodejs中的作用域问题
Dec 26 NodeJs
nodejs入门教程四:URL相关模块用法分析
Apr 24 NodeJs
Express+Nodejs 下的登录拦截实现代码
Jul 01 NodeJs
nodejs实现大文件(在线视频)的读取
Oct 16 NodeJs
nodeJS服务器的创建和重新启动的实现方法
May 12 NodeJs
Nodejs异步回调之异常处理实例分析
Jun 22 NodeJs
NodeJS服务器实现gzip压缩的示例代码
Oct 12 NodeJs
Nodejs对postgresql基本操作的封装方法
Feb 20 NodeJs
使用nodejs分离html文件里的js和css详解
Apr 12 NodeJs
windows如何把已安装的nodejs高版本降级为低版本(图文教程)
Dec 14 #NodeJs
NodeJS配置CORS实现过程详解
Dec 02 #NodeJs
如何利用nodejs自动定时发送邮件提醒(超实用)
Dec 01 #NodeJs
nodeJs项目在阿里云的简单部署
Nov 27 #NodeJs
如何利用nodejs实现命令行游戏
Nov 24 #NodeJs
NodeJS模块Buffer原理及使用方法解析
Nov 11 #NodeJs
nodejs中内置模块fs,path常见的用法说明
Nov 07 #NodeJs
You might like
第十三节--对象串行化
2006/11/16 PHP
dedecms中显示数字验证码的修改方法
2007/03/21 PHP
mysql 全文搜索 技巧
2007/04/27 PHP
PHP实现可精确验证身份证号码的工具类示例
2018/05/31 PHP
PHP levenshtein()函数用法讲解
2019/03/08 PHP
jQuery load方法用法集锦
2011/12/06 Javascript
javascript通过class来获取元素实现代码
2013/02/20 Javascript
JS保留小数点(四舍五入、四舍六入)实现思路及实例
2013/04/25 Javascript
Js控制弹窗实现在任意分辨率下居中显示
2013/08/01 Javascript
js数组去重的5种算法实现
2015/11/04 Javascript
JS实现的全排列组合算法示例
2017/10/09 Javascript
JavaScript对JSON数组简单排序操作示例
2019/01/31 Javascript
一百行JS代码实现一个校验工具
2019/04/30 Javascript
全面解析js中的原型,原型对象,原型链
2021/01/25 Javascript
[01:04:14]VP vs TNC 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
解决Django模板无法使用perms变量问题的方法
2017/09/10 Python
动态规划之矩阵连乘问题Python实现方法
2017/11/27 Python
Python抓取框架Scrapy爬虫入门:页面提取
2017/12/01 Python
Python之读取TXT文件的方法小结
2018/04/27 Python
实时获取Python的print输出流方法
2019/01/07 Python
python+selenium实现QQ邮箱自动发送功能
2019/01/23 Python
Python3.5内置模块之os模块、sys模块、shutil模块用法实例分析
2019/04/27 Python
python中dict使用方法详解
2019/07/17 Python
快速解决vue.js 模板和jinja 模板冲突的问题
2019/07/26 Python
python 已知平行四边形三个点,求第四个点的案例
2020/04/12 Python
Pandas直接读取sql脚本的方法
2021/01/21 Python
html5中嵌入视频自动播放的问题解决
2020/05/25 HTML / CSS
女士鞋子、包包和服装在线,第一款10美元:ShoeDazzle
2019/07/26 全球购物
软件测试工程师结构化面试题库
2016/11/23 面试题
新闻学专业应届生求职信
2013/11/08 职场文书
退休教师欢送会主持词
2014/03/31 职场文书
房屋租赁合同补充协议
2014/10/11 职场文书
5.12护士节活动总结
2015/02/10 职场文书
2019最新版股权转让及委托持股协议书范本
2019/08/07 职场文书
C3 线性化算法与 MRO之Python中的多继承
2021/10/05 Python
使用python绘制横竖条形图
2022/04/21 Python