前言
之前分享了一篇 Nodejs 与 MySQL 数据库交互 的文章,这篇文章主要是讲 mysql模块的使用方式。今天准备分享一篇 Nodejs 服务端 MVC 架构,通过服务端提供的API来完成数据库的CRUD操作。
MVC 介绍
MVC是一种项目架构思想,即对项目进行分层,不同层负责的职责不同。
M层:model 模型,业务逻辑处理,更多体现的是数据库CRUD;
V 层:view 视图,负责数据的呈现;
C 层:controller 控制器,负责业务流程(V与M之间的沟通桥梁)
MVC在express项目里的体现:
数据库准备
-- 创建数据库(不存在时才创建)
CREATE DATABASE IF NOT EXISTS nodejs_mysql_db DEFAULT CHARSET utf8;
-- 创建users表(不存在时才创建)
CREATE TABLE IF NOT EXISTS `users` (
`id` INT(8) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(10) NOT NULL,
`age` INT(11) DEFAULT NULL,
`sex` VARCHAR(10) DEFAULT NULL,
`status` INT(1) DEFAULT '1',
PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8
项目代码
由于我这个项目主要是用于服务端,提供API给前端使用,所以接下来我就省略调了 views 的内容。
1. app.js
项目启动文件
const express = require("express");
const app = express();
const {global} = require("./config/global");
const user = require("./routes/user");
app.use(user);
app.listen(global.port,global.hostname,function (){
console.log('Express server listening at http://%s:%d',global.host,global.port);
})
2. config/global.js
全局配置文件
exports.global = {
"ho