在nodejs项目中封转mysql2的数据连接

2024-03-21 19:52

本文主要是介绍在nodejs项目中封转mysql2的数据连接,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

概要-封装node链接mysql的数据库代码(并不是特别优化,自己感觉还不错)

今天中午有点时间刚好分享之前使用nodejs连接数据库的时候封装了一个数据库连接的代码.

在自己接活的时候,如果使用Java做后端服务,我个人觉得是一个比较费时间的事情,所以前端朋友可以使用node作为服务器,这样不就更好. 

整体架构流程

基于nodejs + express + mysql的架构

数据库的连接封装

如果是自己使用node开发接口,那就需要链接mysql, 既然要连接数据库存储数据,那就说明不是只用一次就完事了,需要频繁调用,那如何封装一个mysql了.

代码如下: 

第一步: 

    自己的电脑需要安装mysql ,安装步骤我就不提供了,有现成的连接教程

   mysql官网: MySQL

第二步: 

    安装nodejs  ,nodejs的安装步骤-请看官网: Node.js 中文网

第三步: 

   开始搭建项目:

   1)  在桌面新建一个文件夹,中英文(建议最好是英文)都可以: 使用命令进入当前文件夹,
输入命令: npm init   --yes
 2)   然后再当前文件夹中新建 app.js  文件

   

 3) 开始下载包 :express代表框架 , mysql代表数据库

npm  i  express  mysql  -S

4)  在app.js中编写代码

   这个是核心代码

// 引入框架
const express = require("express")// 新建app对象
let app = new express()// 监听 
app.listen(3000, () => {console.log("服务器开启:http://127.0.0.1:3000");
})
  5) 开始封装mysql的代码

   我个人喜欢将封装的东西都放到utils中, 所以需要再app.js同级新建一个文件夹utils ,在utils中在新建一个db.js

    node ---> utils ---> db.js

 6) 代码如下: 

  db.js : 

  

// 封装数据库
// 引入mysql
const mysql = require("mysql")// 封转的方法
let myquery = function (...aa) {//  不管你的参数是几个,我的第一个参数都是sqllet sql = aa[0]let arr = []let fn;//方法 function -->fnif (aa.length > 2) {//三个参数arr = aa[1]fn = aa[2]} else {fn = aa[1]}// 以上的参数已经准备好了// 创建连接let conn = mysql.createConnection({host: "127.0.0.1",user: "root",password: "数据库密码",port: 3306,database: "数据库名称"})conn.connect();//执行// 命令if (arr.length > 0) {conn.query(sql, arr, (err, result) => {fn(err, result)})} else {conn.query(sql, (err, result) => {fn(err, result)})}// 关闭conn.end()
}// 向外暴露一个方法体
module.exports = {myquery
}
  7)  接口调用

   在app.js中编写一个简单的接口,例如查询当前用户的列表信息

  

// 引入封装的db.js
const db = require("./utils/db.js");
//创建路由
const router = express.Router();
router.get("/findUserList", (req, res) => {let sql = "select * from user";db.myquery(sql, [], (err, result) => {if (err) {console.log(err);res.send({code: 401,message: "查询失败",});return false;}res.send({code: 200,message: "查询成功!",data: result,});});
});

   

小结

这个封装比较简单,如果想真正的开发项目,其实用koa2比较合适, 今天的分享就到这里,有问题可以留言.

这篇关于在nodejs项目中封转mysql2的数据连接的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/833742

相关文章

如何使用C#串口通讯实现数据的发送和接收

《如何使用C#串口通讯实现数据的发送和接收》本文详细介绍了如何使用C#实现基于串口通讯的数据发送和接收,通过SerialPort类,我们可以轻松实现串口通讯,并结合事件机制实现数据的传递和处理,感兴趣... 目录1. 概述2. 关键技术点2.1 SerialPort类2.2 异步接收数据2.3 数据解析2.

Ubuntu中Nginx虚拟主机设置的项目实践

《Ubuntu中Nginx虚拟主机设置的项目实践》通过配置虚拟主机,可以在同一台服务器上运行多个独立的网站,本文主要介绍了Ubuntu中Nginx虚拟主机设置的项目实践,具有一定的参考价值,感兴趣的可... 目录简介安装 Nginx创建虚拟主机1. 创建网站目录2. 创建默认索引文件3. 配置 Nginx4

大数据spark3.5安装部署之local模式详解

《大数据spark3.5安装部署之local模式详解》本文介绍了如何在本地模式下安装和配置Spark,并展示了如何使用SparkShell进行基本的数据处理操作,同时,还介绍了如何通过Spark-su... 目录下载上传解压配置jdk解压配置环境变量启动查看交互操作命令行提交应用spark,一个数据处理框架

IDEA连接达梦数据库的详细配置指南

《IDEA连接达梦数据库的详细配置指南》达梦数据库(DMDatabase)作为国产关系型数据库的代表,广泛应用于企业级系统开发,本文将详细介绍如何在IntelliJIDEA中配置并连接达梦数据库,助力... 目录准备工作1. 下载达梦JDBC驱动配置步骤1. 将驱动添加到IDEA2. 创建数据库连接连接参数

通过ibd文件恢复MySql数据的操作方法

《通过ibd文件恢复MySql数据的操作方法》文章介绍通过.ibd文件恢复MySQL数据的过程,包括知道表结构和不知道表结构两种情况,对于知道表结构的情况,可以直接将.ibd文件复制到新的数据库目录并... 目录第一种情况:知道表结构第二种情况:不知道表结构总结今天干了一件大事,安装1Panel导致原来服务

Jmeter如何向数据库批量插入数据

《Jmeter如何向数据库批量插入数据》:本文主要介绍Jmeter如何向数据库批量插入数据方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Jmeter向数据库批量插入数据Jmeter向mysql数据库中插入数据的入门操作接下来做一下各个元件的配置总结Jmete

SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法

《SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法》本文主要介绍了SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法,具有一定的参考价值,感兴趣的可以了解一下... 目录方法1:更改IDE配置方法2:在Eclipse中清理项目方法3:使用Maven命令行在开发Sprin

Nginx实现高并发的项目实践

《Nginx实现高并发的项目实践》本文主要介绍了Nginx实现高并发的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录使用最新稳定版本的Nginx合理配置工作进程(workers)配置工作进程连接数(worker_co

MySQL InnoDB引擎ibdata文件损坏/删除后使用frm和ibd文件恢复数据

《MySQLInnoDB引擎ibdata文件损坏/删除后使用frm和ibd文件恢复数据》mysql的ibdata文件被误删、被恶意修改,没有从库和备份数据的情况下的数据恢复,不能保证数据库所有表数据... 参考:mysql Innodb表空间卸载、迁移、装载的使用方法注意!此方法只适用于innodb_fi

mysql通过frm和ibd文件恢复表_mysql5.7根据.frm和.ibd文件恢复表结构和数据

《mysql通过frm和ibd文件恢复表_mysql5.7根据.frm和.ibd文件恢复表结构和数据》文章主要介绍了如何从.frm和.ibd文件恢复MySQLInnoDB表结构和数据,需要的朋友可以参... 目录一、恢复表结构二、恢复表数据补充方法一、恢复表结构(从 .frm 文件)方法 1:使用 mysq