搭建express框架

express建立項目與vue差很少,二者都有腳手架。html

1.全局安裝Express及express-generator(express的腳手架)vue

命令:npm install  -g express,npm install -g express-generator

2.初始化一個Express應用node

命令:express express-app(其中express-app爲項目名稱mysql

初始化後的項目目錄結構:sql

 

目錄結構簡介:shell

  • app.js 應用的初始化文件,包括引入應用程序的基礎依賴項、設置視圖即view的引擎目錄以及模板、設置靜態資源路徑、配置通用的中間件、引入路由和一些錯誤處理中間件等。
  • package.json 應用的配置文件,文件內包含程序的基礎信息、啓動腳本和依賴包等。
  • bin/www 應用的啓動文件,文件內包含引用要啓動的應用、設置應用監聽的端口和啓動http服務等。
  • public/** 應用的靜態資源文件目錄,該目錄下的文件資源不須要通過文件映射就能夠直接訪問。
  • routes/** 應用的路由文件,這些路由文件中設置的接口最終會以指定的HTTP請求方式暴露給用戶,並在用戶請求以後將結果返回。
  • views 應用的視圖文件,在app.js中設置好視圖引擎和模板以後,該目錄即爲應用視圖的根目錄,而後路由文件就會根據app.js中的設置加載並渲染該目錄下的視圖文件。

 

3.啓動應用數據庫

安裝應用的依賴包命令:npm installexpress

啓動程序命令:npm start 或 node bin/www npm

啓動後,用瀏覽器訪問:localhost:3000(默認啓動端口爲3000),能夠看到以下頁面:json

 

 1.首先新建一個js文件,用來封裝操做數據庫得函數

 1 let mysql = require("mysql");
 2 let options = {
 3   host:"localhost",
 4   port:"3306",
 5   user:"root",
 6   password:"123",
 7   database:"hmy"
 8 }
 9 // 建立數據庫鏈接
10 let con = mysql.createConnection(options)
11 
12 // 創建鏈接
13 con.connect((err)=>{
14   // 若是失敗的操做
15   if(err){
16     console.log("鏈接數據庫失敗");
17   }else{
18     console.log("數據庫鏈接成功!")
19   }
20 })
21 // 封裝查詢數據庫的內容,返回promise
22 function sqlQuery(strSql,arr){
23   return new Promise((resolve,reject) => {
24     con.query(strSql,arr,(err,results) => {
25       if(err){
26         reject(err);
27       }else{
28         resolve(results)
29       }
30     })
31   })
32 }
33 // 導出函數
34 module.exports = sqlQuery;

 

2.在app.js中的代碼配置

let sqlQuery = require("./mysql/mysql");
let express = require("express")
let options = {
  host:"localhost",
  port:"3306",
  user:"root",
  password:"123",
  database:"hmy"
}

let app = express()
app.get('/',(req,res) => {
  // 返回數據庫前30條數據
  let strSql = "select * from  onepice limit 0,30";
  let result = sqlQuery(strSql);
  console.log(result);
  res.send("首頁")
})
app.get('/person/:id',(req,res) => {
  
})

// 導出
module.exports = app;

  

 

 

 把res.send換爲return res.jsonp(result);就能夠發送json數據

3.根據所查尋得內容返回後臺數據:

 

1 app.get('/person/:id',async(req,res) => {
2   let strSql = "select * from onepice where id = ? ";
3   let id = req.params.id;
4   // 把sql語句傳入,而且傳入佔位符的參數
5   let results = await sqlQuery(strSql ,[id]);
6   //查詢到的數據數組化,並返回json數據
7   res.json(Array.from(results))
8 })

相關文章
相關標籤/搜索