Express 第二弹之 Sequelizejs + Mysql

2019-11-05  本文已影响0人  回首潇潇雨歇处

Node开发过程中一些工具:

在我们接下来的实例中将回归采用关系型数据库Mysql, 在这里我选择sequelize作为我们的ORM。

安装: cnpm install sequelize --save-dev
使用: 先直接上代码,然后再进行解析

"use strict";

import express from "express";

import Sequelize from 'sequelize';

import co from 'co';

import wga from 'wga';

const app = express();

// 配置 连接数据库
let sequelize = new Sequelize(
    'test',
    'root',
    '',
    {
        'dialect':'mysql',
        'host':'localhost',
        'port':3306
    }
);

//定义model  映射数据表
let User = sequelize.define('student',{
    name:{type: Sequelize.STRING},//数据类型
    age:{type: Sequelize.INTEGER}
});

// 将Model  同步到数据库
co(function* (){
    yield User.sync({force: true});
    console.log('Database prepared already');
}).catch( err => console.log(err) );


app.get('/',(req, res, next) => {
    res.send("hello baby");
    next();
});

app.get('/students', wga(function* (req, res) {
    let stds = yield User.findAll();
    res.json(stds);
}))

app.use((req, res, next) => {
    let err = new Error('Not Found');
    err.status = 404;
    next(err);
});

let server = app.listen(8081,() => {
    let host = server.address().address;
    let port = server.address().port;
    console.log("服务启动成功,访问地址为 http://%s:%s",host,port);
});

首先通过new Sequelize进行配置连接我们的数据库;

接下来就是创建Model(对应的是数据库中的表),然后将Model同步到数据库中,这样就可以进行数据库的操作了。
源码参见:https://github.com/huleile/express-sequelize-sample

引自: 昭熙小乐的博客

上一篇 下一篇

猜你喜欢

热点阅读