nodejs+express最简易的连接数据库的方法
作者:shine-lzx 发布时间:2024-01-24 21:15:24
环境搭建
1.首先需要自行安装node环境
2.然后全局安装 express
npm install -g express
3.创建express项目文件夹
express创建项目默认为jade模板引擎,若使用其他引擎,使用命令切换
express node_demo -e (选择ejs模板) // 在项目名称的后面添加 -e 那么创建出来的模板文件就是.ejs类型,语法是与html相同的
在vscode中打开我们建好的项目,目录如下:
对于ejs看着不习惯的同学可以将其改为html,如下:
然后还需要将在views新建一个index.html 与error.html 内容如下 index.html
error.html
安装依赖 npm install
启动项目 npm start
监听bin/www文件,默认端口为3000,可在www文件中更改, 打开浏览器,输入localhost:3000
这时我们就可以看到页面显示的内容是index.html 里面定义的内容了
因为每次修改都需要重新启动,比较麻烦,这里有个插件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连接数据库就简单的完成了
后记
安装Navicat Premium
下载地址:https://www.jb51.net/database/703548.html
安装MySQL
下载地址:https://www.jb51.net/softs/38849.html
来源:https://juejin.cn/post/6909018241721434126


猜你喜欢
- 1.在vscode中搜索Autoprofixer2.在安装完成之后要配置在需要添加前缀的css文件上,右键点击命令面板,输入Autopref
- 对于使用虚拟主机的站长朋友,我们可能不知道该服务器是否安装了某种我们需要的组件。这时我们可以使用下面的代码来判断。该函数功能:检查是否存在系
- 一、介绍如果在Python中需要对用户输入的密码或者其他内容进行加密,首选的方法是生成hash值。在Python中可以利用二个模块来进行:&
- Python中函数参数的定义主要有四种方式:1. F(arg1,arg2,…)这是最常见的定义方式,一个函数可以定义任意个参数,每个参数间用
- 地图这期文章我们一起来看看地图是如何绘制的,如何在地图里面添加数据进行多维度的展示,下面我们一起来感受一下地图的魅力吧!&ldquo
- 对于信息安全有要求的,在数据下发和同步过程中需要对含有用户身份信息的敏感字段脱敏,包括用户姓名、证件号、地址等等,下面是自定义函数的代码CR
- 还是分析一下大体的流程:首先还是Chrome浏览器抓包分析元素,这是网址:https://www.douyu.com/directory/a
- 1 作用注意此处Tensorflow版本是2.0+。由于本人是Pytorch用户,对Tensorflow不是很熟悉,在读到用tf写的代码时就
- 装饰器(decorator)是一种高级Python语法。装饰器可以对一个函数、方法或者类进行加工。在Python中,我们有多种方法对函数和类
- 本文实例讲述了Django框架文件上传与自定义图片上传路径、上传文件名操作。分享给大家供大家参考,具体如下:文件上传1、创建上传文件夹在st
- 很多的网站都有记数器,用来记录网站的访问量,这给网站管理员即时了解本网站的运行及访问情况提供了很多的方便。笔者研究过很多用ASP编写的计数器
- 栈是一种后进先出(LIFO)的数据结构,在实际生活和工作中也很常见。比如,在餐厅里的一摞盘子,总是从上面先取,也就是最后放到上面的先被取走。
- 安装很简单pip install psutil官网地址为:https://pythonhosted.org/psutil/ (文档上有详细的
- 一、将PHP数组转换为JSON格式在PHP中,我们可以直接使用数组来存储数据。但是在JS中,数组通常以JSON(JavaScript Obj
- 目录1、基础理论1.1 事务1.2 分布式事务2、分布式事务的解决方案2.1 两阶段提交/XA2.2 SAGA2.3 TCC2.4 本地消息
- 本文实例讲述了python使用xlrd模块读写Excel文件的方法。分享给大家供大家参考。具体如下:一、安装xlrd模块 到python官网
- mysql可以通过下面语句判断是否支持分区:SHOW VARIABLES LIKE '%partition%';如果输出:h
- 背景简介别踩白板这个游戏相信大家都玩过,这个是基于HTML5打造的简单小游戏,在PC端和移动端都能够运行,适应多种平台,今天我们使用原生JS
- 从实时视频流中识别出人脸区域,从原理上看,其依然属于机器学习的领域之一,本质上与谷歌利用深度学习识别出猫没有什么区别。程序通过大量的人脸图片
- 在编写一些小程序时,我需要比较两个字符串是否相同。一开始的思路是使用ord()函数获取字符的整数表示,但是调试过后发现,ord()函数传入的