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调用cmd命令实现复制目录
May 04 NodeJs
nodejs创建web服务器之hello world程序
Aug 20 NodeJs
nodejs连接mysql数据库简单封装示例-mysql模块
Apr 10 NodeJs
NodeJs模拟登陆正方教务
Apr 28 NodeJs
nodeJS(express4.x)+vue(vue-cli)构建前后端分离实例(带跨域)
Jul 05 NodeJs
ubuntu编译nodejs所需的软件并安装
Sep 12 NodeJs
nodejs判断文件、文件夹是否存在及删除的方法
Nov 10 NodeJs
nodejs结合Socket.IO实现的即时通讯功能详解
Jan 12 NodeJs
nodejs基于express实现文件上传的方法
Mar 19 NodeJs
搭建一个nodejs脚手架的方法步骤
Jun 28 NodeJs
nodejs中内置模块fs,path常见的用法说明
Nov 07 NodeJs
分享五个Node.js开发的优秀实践 
Apr 07 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
PHP 巧用数组降低程序的时间复杂度
2010/01/01 PHP
php中检查文件或目录是否存在的代码小结
2012/10/22 PHP
php上传文件问题汇总
2015/01/30 PHP
PHP常用技巧汇总
2016/03/04 PHP
php图片添加文字水印实现代码
2016/03/15 PHP
javascript attachEvent和addEventListener使用方法
2009/03/19 Javascript
JavaScript 动态创建VML的方法
2009/10/14 Javascript
JavaScript在IE和Firefox(火狐)的不兼容问题解决方法小结
2010/04/13 Javascript
jquery 圆形旋转图片滚动切换效果
2011/01/19 Javascript
jQuery LigerUI 使用教程表格篇(1)
2012/01/18 Javascript
js控制表单奇偶行样式的简单方法
2013/07/31 Javascript
JavaScript获取路径设计源码
2014/05/22 Javascript
WordPress中鼠标悬停显示和隐藏评论及引用按钮的实现
2016/01/12 Javascript
如何用angularjs制作一个完整的表格
2016/01/21 Javascript
微信小程序 实战小程序实例
2016/10/08 Javascript
Angularjs的Controller间通信机制实例分析
2016/11/07 Javascript
用move.js库实现百叶窗特效
2017/02/08 Javascript
详解vue组件开发脚手架
2018/06/15 Javascript
JS中appendChild追加子节点无效的解决方法
2018/10/14 Javascript
微信小程序实现弹框效果
2020/05/26 Javascript
ant design 日期格式化的实现
2020/10/27 Javascript
Python获取脚本所在目录的正确方法
2014/04/15 Python
Python 函数返回值的示例代码
2019/03/11 Python
pandas 时间格式转换的实现
2019/07/06 Python
pytorch 在sequential中使用view来reshape的例子
2019/08/20 Python
读取nii或nii.gz文件中的信息即输出图像操作
2020/07/01 Python
CSS3绘制六边形的简单实现
2016/08/25 HTML / CSS
CSS3 实现弹幕的示例代码
2017/08/07 HTML / CSS
印度尼西亚手表和包包商店:Urban Icon
2019/12/12 全球购物
公司办公室岗位职责
2014/03/19 职场文书
《新型玻璃》教学反思
2014/04/13 职场文书
党员“四风”问题批评与自我批评思想汇报
2014/10/06 职场文书
2015年乡镇财政工作总结
2015/05/19 职场文书
2016教师校本培训心得体会
2016/01/08 职场文书
话题作文之关于呼唤
2019/11/29 职场文书
idea编译器vue缩进报错问题场景分析
2021/07/04 Vue.js