教务管理系统(node+express+mysql)
模块拆分
现在将教务系统拆分成九个模块:
- 教务系统教师业务:师资管理、教学计划管理、排课管理
- 教务系统学生业务:考试管理、毕业生管理、学生综合测评
- 信息查询:自习室查询、课程表查询
- 考试系统:实现学生在线考试
- 视频系统:实现学生在线观看教学视频
- 评教系统:学生选课管理,教学质量评价
- 成绩查询系统:成绩管理
- 基础信息:学生管理、教室管理、教师基础数据
- 信息交流:实现与系统使用者进行交流
给如上模块排优先级如下
- 基础信息
- 教务系统教师业务
- 教务系统学生业务
- 考试系统
- 评教系统
- 成绩查询系统
- 信息查询
- 视频系统
- 信息交流
开发准备
安装环境
其他准备
如上安装完成,可以进行如下操作。
- 安装 express
npm install express -g
2. 创建工程
express 你的工程名(墙裂建议使用英文)
3. 安装依赖
npm install
4. 在 package.json 的 dependencies 中新增, “mysql” : “latest”, 并执行npm install安装依赖
5. 在conf目录中,编写mySQL数据库连接配置
// conf/db.js
// MySQL数据库联接配置
module.exports = {
mysql: {
host: '127.0.0.1', // ip
user: 'root', // 用户名
password: '123456', // 数据库密码
database:'test1', // 你数据库的名称
port: 3306 // 端口
}
};
6. 创建 app.js 作为启动文件
7. 创建 router.js 配置路由
8. 解决跨域问题 npm i --save cors
9. 在路由中进行跨域配置
app.use('*', function(req, res, next) {
res.header('Access-Control-Allow-Origin', req.headers.origin);//注意这里不能使用 *
res.header('Access-Control-Allow-Headers', 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild');
res.header("X-Powered-By",' 3.2.1');
res.header('Access-Control-Allow-Credentials', true); // 允许服务器端发送Cookie数据
res.header("Content-Type", "application/json;charset=utf-8");
res.header('Access-Control-Allow-Methods', 'PUT, POST, GET, DELETE, OPTIONS');//设置方法
if (req.method == 'OPTIONS') {
res.sendStatus(200); // 在正常的请求之前,会发送一个验证,是否可以请求。
}
else {
next();
}
});
总结
经过如上的环境配置,在结合模块的拆分,现在可以着手开发了。可以根据模块拆分部分所列的优先级进行开发,先把基础部分的完成,后面的可以先不做。软件开发的逻辑,先把基础部分先开发出来上线使用,后期的功能可以慢慢开发,以迭代更新的方式推送。
教务管理系统(node+express+mysql)的更多相关文章
- Node + Express + Mysql的CMS小结
因为之前用过上述的组合完成过很多系统,而这一次是为了实现一个帮助系统的静态网页发布.因为很久不写,重点说遇到的几个坑: 1.库版本的问题 比如mysql连接数据库一直报错,因为系统重装过,所以重新安装 ...
- node+express+mysql 实现登陆注册
基于 node.express.mysql 实现的登录注册. 1.`首先在终端中 安装 node .` 2.`通过npm install express -g 命令全局安装 express`. 3.` ...
- 应用node+express+mysql 实现简单的增删改查
记录下来备忘 1.准备好webstrom编辑器,编辑器调整字体大小等在file->settings->editor下设置 注册码 来源网上: 2017.2.27更新 选择“license ...
- node+express+mysql实现简单的数据增删改查
前提 电脑已经安装了node,express,mysql. 实现步骤 1.新建数据库表 附数据表结构: 2.创建exprss项目 express -e myapp 新建一个以ejs为模板的expre ...
- 一个 "开箱即用" 个人博客全栈系统项目!vue+node+express+mysql+sequlize+uniapp
" MG'Blog " 一个 "开箱即用" 个人博客全栈系统项目! 探索本项目的源码 » 前台预览 · 管理端预览 v1.0.2 小程序预览 v1.0.2 介绍 ...
- node express+mysql搭建简易API服务—body-parser中间件
最近用express搭建了一个简单的RESTful风格的API服务,数据库使用mysql,主要用于获取数据库数据,模糊搜索等. 需要用到的模块: express:这个都很熟悉了: body-parse ...
- Node+Express+MySql实现简单增删改查和登录
var express = require('express'); var mysql = require('mysql'); var app = express(); var bodyParser ...
- Node + Express + MySQL 接口开发完整案例
https://blog.csdn.net/u013216976/article/details/85273770 https://github.com/Apache-Ra/node-express- ...
- 电商网站项目Angular+Bootstrap+Node+Express+Mysql
1.登陆 2.注册 3.主页 4.购物车 5.管理中心 6.文件上传 代码: https://github.com/Carol0311/min_Shop.git 后期会持续进行功能更新以及开发阶段遇到 ...
随机推荐
- C#算法设计查找篇之03-插值查找
插值查找(Interpolation Search) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/701 访问. 插值 ...
- vue安装和卸载
安装最新版本 npm install -g @vue/cli或 yarn global add @vue/cli 卸载之前版本npm uninstall vue-cli -g 或 yarn globa ...
- (转载)sqlserver2008”备份集中的数据库备份与现有的XX数据库不同”解决办法
原文链接:https://www.cnblogs.com/huangfr/archive/2012/08/09/2629687.html 因为是在另一台电脑对同名数据库做的备份,用常规方法还原,提示不 ...
- 什么是BFC?看这一篇就够了
BFC 定义 BFC(Block formatting context)直译为"块级格式化上下文".它是一个独立的渲染区域,只有Block-level box参与, 它规定了内部的 ...
- springMVC入门(五)------统一异常处理
简介 系统中异常包括两类:预期异常和运行时异常RuntimeException,前者通过异常捕获获取异常信息,后者需通过规范代码.提高代码路绑定减少运行时异常的发生 异常处理思路:无论dao层.ser ...
- SuperSlide轮播切换
<!-- 点击切换引入 --> <script type="text/javascript" src="js/jquery.js">&l ...
- Go | Go 语言打包静态文件以及如何与Gin一起使用Go-bindata
系列文章目录 第一章 Go 语言打包静态文件以及如何与Gin一起使用Go-bindata 目录 系列文章目录 前言 一.go-bindata是什么? 二.使用步骤 1. 安装 2. 使用 3. 读取文 ...
- 浅析 MVC
MVC(Model–View–Controller) Model:数据模型 负责操作所有数据View:视图 负责所有UI界面Controller:控制器 负责其他 //数据放在m const m = ...
- N皇后问题的二进制优化详细思路
题目啊常规解法(DFS)在此就不赘述了... 直接进入正题. 众所周知,N皇后是NP完全类问题,n稍微大了点求解过程就会变得很长. 算法方面很难再有质的效率突破,但这不妨在其他细节上下下功夫. 揆诸常 ...
- DevOps系列(1)-总体架构
扯闲淡 在进入正式话题之前,先扯个淡,这算是第一篇我正式在博客上发布的随笔吧,之前也一直有想写点什么,将自己多年的工作经验分享出来,供大家参考点评,但是奈何一直对自己的文字功底不自信(其实也确实比较烂 ...