mysql第五章项目二_Todo List:Node+Express 搭建服务端毗邻Mysql – 第五章(第1节)
點擊右上方紅色按鈕關注“web秀”,讓你真正秀起來
前言
萬丈高樓平地起,我們的Todo List項目也是越來越結實了。Todo List的前面4章內容都是在為Client端開發,現在架構基本ok,接下來我們搭建Server端,毗鄰數據庫,Client端能與數據庫交互。
Todo List:Node+Express 搭建服務端毗鄰Mysql – 第五章(第1節)
以下知識和前端知識無關哦,雖然也是JS代碼,有興趣的可以繼續領會一波。固然,現在開發同硯多多少少照樣要會一點點全棧類的知識,這也是一種趨勢。
代碼請戳:github搜索 /javanf/todo-list
Todo List:Node+Express 搭建服務端毗鄰Mysql – 第五章(第1節)
本次《todo list: Vue待辦事項義務治理》,分為一下章節,有興趣的同硯可以連續關注。
第一章: 初識(項目搭建、基本功能組件實現)
第二章: 數據動態化處置(localStorage + Vuex),可新增,可編輯
第三章:待辦事項自界說分組
第四章:待辦事項添加形貌圖片等信息
第五章:Node + Express 搭建服務端毗鄰Mysql
第六章:Client端與Server端交互,待辦義務入庫等
第七章:多人協同處置待辦事項,權限治理
第八章:完結:線上公布
開端界說7個章節,現實開發中有可能有所增減。
安裝模塊
如題目所見,我們是Node + Express 搭建服務端毗鄰Mysql,以是需要安裝2個模塊, express和mysql。
npm i express mysql -S
Todo List:Node+Express 搭建服務端毗鄰Mysql – 第五章(第1節)
目錄結構
Todo List:Node+Express 搭建服務端毗鄰Mysql – 第五章(第1節)
根目錄新建server文件夾,并在下面建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 // 露出出這個接口
Todo List:Node+Express 搭建服務端毗鄰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')})
Todo List:Node+Express 搭建服務端毗鄰Mysql – 第五章(第1節)
啟動服務,而且露出2個接口,獲取和修改task_list表的數據。
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語句,一個是查詢task_list表,一個是修改task_list表id為1的title值,與上面的接口對應。
這里用postMan工具模擬一下請求,請看下列數據:
Todo List:Node+Express 搭建服務端毗鄰Mysql – 第五章(第1節)
Todo List:Node+Express 搭建服務端毗鄰Mysql – 第五章(第1節)
挪用update接口后的數據庫數據:
Todo List:Node+Express 搭建服務端毗鄰Mysql – 第五章(第1節)
總結
本章節之前公布了一節視頻,文章公布與視頻之后,以是做出了許多優化的地方。對文字不是很傷風的,可以去看看視頻。同時與之(《todo list: Vue待辦事項義務治理》)相關的視頻專輯也已經發出。
代碼請戳:github搜索 /javanf/todo-list
喜歡小編或者以為小編文章對你有輔助的,可以點擊一波關注哦!
總結
以上是生活随笔為你收集整理的mysql第五章项目二_Todo List:Node+Express 搭建服务端毗邻Mysql – 第五章(第1节)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql平滑关闭_MySQL平滑删除数
- 下一篇: oracle java数据类型转换函数_