点击右上方红色按钮关注“web秀”,让你真正秀起来

前言

万丈高楼平地起,我们的Todo List项目也是越来越健壮了。Todo List的前面4章内容都是在为端开发,现在架构基本ok,接下来我们搭建端,连接数据库,端能与数据库交互。

数据库内连接代码_数据库连接代码写在哪_java连接mysql数据库的代码

Todo List:Node+ 搭建服务端连接Mysql – 第五章(第1节)

以下知识和前端知识无关哦,虽然也是JS代码,有兴趣的可以继续了解一波。当然,现在开发同学多多少少还是要会一点点全栈类的知识,这也是一种趋势。

代码请戳:搜索 //todo-list

数据库内连接代码_数据库连接代码写在哪_java连接mysql数据库的代码

Todo List:Node+ 搭建服务端连接Mysql – 第五章(第1节)

本次《todo list: Vue待办事项任务管理》,分为一下章节,有兴趣的同学可以持续关注。

第一章: 初识(项目搭建、基本功能组件实现)

第二章: 数据动态化处理( + Vuex),可新增,可编辑

第三章:待办事项自定义分组

第四章:待办事项添加描述图片等信息

第五章:Node + 搭建服务端连接Mysql

第六章:端与端交互,待办任务入库等

第七章:多人协同处理待办事项,权限管理

第八章:完结:线上发布

初步定义7个章节,实际开发中有可能有所增减。

安装模块

如标题所见,我们是Node + 搭建服务端连接Mysql,所以需要安装2个模块, 和mysql。

npm i express mysql -S

数据库连接代码写在哪_java连接mysql数据库的代码_数据库内连接代码

Todo List:Node+ 搭建服务端连接Mysql – 第五章(第1节)

目录结构

数据库内连接代码_数据库连接代码写在哪_java连接mysql数据库的代码

Todo List:Node+ 搭建服务端连接Mysql – 第五章(第1节)

根目录新建文件夹,并在下面建3个文件,app.js(入口文件),pool.js(mysql数据库连接池), sql.js(sql语句)。

pool.js

/**
* @module mysql数据库连接池
* @author: Javanx 
* @date: 2019-06-05 14:17:51
*/
var mysql = require('mysql')
var pool = mysql.createPool({
 host: '127.0.0.1', // 数据库地址
 port: '3306', // 端口
 user: 'root', // 用户名称
 password: 'root', // 用户密码
 database: 'todo-list' // 要链接的数据库名称
});
// 查询相关
let query = (sql, callback) => { 
 pool.getConnection((err,conn) => { 
 if(err){
 callback(err,null,null); 
 }else{ 
 conn.query(sql, (qerr,vals,fields) => { 
 //释放连接 
 conn.release(); 
 //事件驱动回调 
 callback(qerr, vals, fields); 
 }); 
 } 
 }) 
}
module.exports = query // 暴露出这个接口

数据库连接代码写在哪_数据库内连接代码_java连接mysql数据库的代码

Todo List:Node+ 搭建服务端连接Mysql – 第五章(第1节)

用数据库连接池的好处是:

1、资源重用(避免频繁的创建、释放连接引起的大量性能开销)

2、更快的响应速度(利用现有可用连接,避免了数据库连接初始化和释放过程的时间开销,从而缩减了系统整体响应时间)

app.js

var express = require('express') // 引入express模块
var query = require('./pool') // 引入数据库连接池文件
var sql = require('./sql') // sql语句文件
var app = express() // 创建express的实例
// get请求
app.get('/get-task-list', (req, res) => {
 query(sql.SELECT_TODOLIST_TABLE, (err, result, fields) => {
 if (err) {
 console.log('[SELECT ERROR]:', err.message)
 }
 res.send(result) // 服务器响应请求
 })
})
// post请求
app.post('/update-task-list', (req, res) => {
 query(sql.UPDATE_TODOLIST_TABLE, (err, result, fields) => {
 if (err) {
 console.log('[SELECT ERROR]:', err.message)
 }
 res.send(result)
 })
})
// 监听端口
app.listen(3000, () => {
 console.log('Server running at 3000 port')
})

数据库内连接代码_java连接mysql数据库的代码_数据库连接代码写在哪

Todo List:Node+ 搭建服务端连接Mysql – 第五章(第1节)

启动服务,并且暴露2个接口,获取和修改表的数据。

sql.js

module.exports = {
 SELECT_TODOLIST_TABLE: 'SELECT * FROM TASK_LIST',
 UPDATE_TODOLIST_TABLE: 'UPDATE TASK_LIST SET TITLE = "任务1" WHERE ID = 1',
}

这里2个sql语句,一个是查询表,一个是修改表id为1的title值,与上面的接口对应。

这里用工具模拟一下请求,请看下列数据:

java连接mysql数据库的代码_数据库内连接代码_数据库连接代码写在哪

Todo List:Node+ 搭建服务端连接Mysql – 第五章(第1节)

数据库内连接代码_数据库连接代码写在哪_java连接mysql数据库的代码

Todo List:Node+ 搭建服务端连接Mysql – 第五章(第1节)

调用接口后的数据库数据:

数据库连接代码写在哪_数据库内连接代码_java连接mysql数据库的代码

Todo List:Node+ 搭建服务端连接Mysql – 第五章(第1节)

总结

本章节之前发布了一节视频,文章发布与视频之后,所以做出了很多优化的地方。对文字不是很感冒的,可以去看看视频。同时与之(《todo list: Vue待办事项任务管理》)相关的视频专辑也已经发出。

代码请戳:搜索 //todo-list

喜欢小编或者觉得小编文章对你有帮助的,可以点击一波关注哦!

———END———
限 时 特 惠: 本站每日持续更新海量各大内部创业教程,永久会员只需109元,全站资源免费下载 点击查看详情
站 长 微 信: nanadh666

声明:1、本内容转载于网络,版权归原作者所有!2、本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。3、本内容若侵犯到你的版权利益,请联系我们,会尽快给予删除处理!