基于express框架繼續(xù)創(chuàng)建
1.創(chuàng)建config文件夾凉唐,再在文件夾下創(chuàng)建一個database.js文件鹅颊,主要設置數(shù)據(jù)庫的一些信息
module.exports = {
database:"lanou",//數(shù)據(jù)庫名
username:"root",//數(shù)據(jù)庫用戶名
password:"",//數(shù)據(jù)庫密碼
dialect:"mysql",//數(shù)據(jù)庫類型
host:"localhost",//數(shù)據(jù)庫的主機名
port:"3306",//數(shù)據(jù)庫的端口號
timezone:"+8:00",//中國時區(qū)
//pool數(shù)據(jù)庫連接池尸昧,對用戶訪問數(shù)據(jù)的一種優(yōu)化
//大大減少了數(shù)據(jù)庫壓力
pool:{
max:10,
min:0,
acquire:30000直焙,
idle:1000,
}
}
2.創(chuàng)建model文件夾
- 2.1建立index.js文件
//引入sequelize模塊
let {Sequelize,DataTypes} = require("sequelize");
//引入數(shù)據(jù)庫設置
let db = require('../config/database');
//實例化數(shù)據(jù)庫對象
let sequelize = new Sequelize(db);
//引入數(shù)據(jù)表
let user = require('./user')(sequelize,DataTypes);
//更新數(shù)據(jù)庫
sequelize.sync();
//導出數(shù)據(jù)表
module.exports = {
user,
}
- 建立數(shù)據(jù)表.js文件
module.exports = (sequelize,DataTypes)=>sequelize.define('user',{
user_id:{
type:DataTypes.INTEGER(11),//設置字段類型
allowNull:false,//不允許為空
primaryKey:true,//設置主鍵
autoIncrement:true,//設置主鍵自增
}
});
3.創(chuàng)建server文件夾
- 建立同名的.js文件
//引入model表的映射
let model = require('../model');
//聲明變量接收一下表
let user = model.user;
//添加用戶的方法
async function addUser(obj,callback){
let temp = await user.create({
username:obj.username,
password:obj.password,
phone:obj.phone,
});
var data;
if(temp){
//成功
data = {
msg:"success",
code:1,
}
}
else{
data = {
msg:"error",
code:0,
}
}
callback(data);
}
//導出
moudle.exports = {
addUser,
}
4.創(chuàng)建controller文件
//引入server表的操作
let user = require ('../server/user');
//添加用戶的數(shù)據(jù)處理
function c_adduser(req,res){
user.addUser(req.body,function(data){
res.send(data);
});
}
//導出
module.exports = {
c_addUser,
}
5.API
var express = require('express');
var router = express.Router();
//引入controller控制器
let user = require('../controller/user');
//設置添加用戶的API
router.post('/add',user.c_addUser);
//導出
module.exports = router;
6.j將每一個API文件在app.js文件中引入并掛載
7.GIF
8.GIF