使用express + sequelize开发后端

84 阅读1分钟

1.安装express-generator

npm install -g express-generator

2.初始化express

express --no-view

3.安装 sequelize

npm install sequelize --save

4.安装 mysql2

npm install mysql2 --save

5.安装 dotenv

npm install dotenv --save

6.配置database连接mysql

const { Sequelize } = require("sequelize")

const sequelize = new Sequelize({
  dialect: 'mysql',
  host: '服务器地址',
  database: '数据库名称',
  username: '账号',
  password: '密码',
  timezone: '+08:00',
  define: {
    freezeTableName: true,
    underscored: true,
  }
});

sequelize.authenticate().then(() => {
  console.log('数据库连接成功')
}).catch(err => {
  console.log('数据库连接失败')
})

module.exports = sequelize

7.在app.js中配置 dotenv

const dotenv = require('dotenv')
dotenv.config()

8.创建model文件

const sequelize = require('../config/database')
const { Model, DataTypes } = require('sequelize')

class UserModel extends Model {

}

UserModel.init({
  id: {
    type: DataTypes.INTEGER,
    primaryKey: true
  },
  username: DataTypes.STRING,
  password: DataTypes.STRING,
}, {
  sequelize,
  modelName: 'Users'
})

UserModel.sync({ alter: true })
module.exports = UserModel

9.创建router文件


const express = require('express');
const router = express.Router();
const UserModel = require('../models/user.js')

/* GET users listing. */
router.get('/list', async (req, res, next) {
  const sqlData = await UserModel.findAll();
  res.json(sqlData)
  
});

module.exports = router;

10.app.js配置路由

const userRouter = require('./routes/user')
app.use('/user, userRouter)