模块拆分

现在将教务系统拆分成九个模块:

  1. 教务系统教师业务:师资管理、教学计划管理、排课管理
  2. 教务系统学生业务:考试管理、毕业生管理、学生综合测评
  3. 信息查询:自习室查询、课程表查询
  4. 考试系统:实现学生在线考试
  5. 视频系统:实现学生在线观看教学视频
  6. 评教系统:学生选课管理,教学质量评价
  7. 成绩查询系统:成绩管理
  8. 基础信息:学生管理、教室管理、教师基础数据
  9. 信息交流:实现与系统使用者进行交流

给如上模块排优先级如下

  1. 基础信息
  2. 教务系统教师业务
  3. 教务系统学生业务
  4. 考试系统
  5. 评教系统
  6. 成绩查询系统
  7. 信息查询
  8. 视频系统
  9. 信息交流

开发准备

安装环境

数据库 MySQL下载安装

下载node.js

其他准备

如上安装完成,可以进行如下操作。

  1. 安装 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)的更多相关文章

  1. Node + Express + Mysql的CMS小结

    因为之前用过上述的组合完成过很多系统,而这一次是为了实现一个帮助系统的静态网页发布.因为很久不写,重点说遇到的几个坑: 1.库版本的问题 比如mysql连接数据库一直报错,因为系统重装过,所以重新安装 ...

  2. node+express+mysql 实现登陆注册

    基于 node.express.mysql 实现的登录注册. 1.`首先在终端中 安装 node .` 2.`通过npm install express -g 命令全局安装 express`. 3.` ...

  3. 应用node+express+mysql 实现简单的增删改查

    记录下来备忘 1.准备好webstrom编辑器,编辑器调整字体大小等在file->settings->editor下设置 注册码 来源网上: 2017.2.27更新 选择“license ...

  4. node+express+mysql实现简单的数据增删改查

    前提 电脑已经安装了node,express,mysql. 实现步骤 1.新建数据库表 附数据表结构: 2.创建exprss项目 express -e myapp  新建一个以ejs为模板的expre ...

  5. 一个 "开箱即用" 个人博客全栈系统项目!vue+node+express+mysql+sequlize+uniapp

    " MG'Blog " 一个 "开箱即用" 个人博客全栈系统项目! 探索本项目的源码 » 前台预览 · 管理端预览 v1.0.2 小程序预览 v1.0.2 介绍 ...

  6. node express+mysql搭建简易API服务—body-parser中间件

    最近用express搭建了一个简单的RESTful风格的API服务,数据库使用mysql,主要用于获取数据库数据,模糊搜索等. 需要用到的模块: express:这个都很熟悉了: body-parse ...

  7. Node+Express+MySql实现简单增删改查和登录

    var express = require('express'); var mysql = require('mysql'); var app = express(); var bodyParser ...

  8. Node + Express + MySQL 接口开发完整案例

    https://blog.csdn.net/u013216976/article/details/85273770 https://github.com/Apache-Ra/node-express- ...

  9. 电商网站项目Angular+Bootstrap+Node+Express+Mysql

    1.登陆 2.注册 3.主页 4.购物车 5.管理中心 6.文件上传 代码: https://github.com/Carol0311/min_Shop.git 后期会持续进行功能更新以及开发阶段遇到 ...

随机推荐

  1. C#LeetCode刷题之#598-范围求和 II​​​​​​​(Range Addition II)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3881 访问. 给定一个初始元素全部为 0,大小为 m*n 的矩阵 ...

  2. 用python爬取B站在线用户人数

    最近在自学Python爬虫,所以想练一下手,用python来爬取B站在线人数,应该可以拿来小小分析一下 设计思路 首先查看网页源代码,找到相应的html,然后利用各种工具(BeautifulSoup或 ...

  3. P6087 [JSOI2015]送礼物 01分数规划+单调队列+ST表

    P6087 [JSOI2015]送礼物 01分数规划+单调队列+ST表 题目背景 \(JYY\) 和 \(CX\) 的结婚纪念日即将到来,\(JYY\) 来到萌萌开的礼品店选购纪念礼物. 萌萌的礼品店 ...

  4. 调试备忘录-J-Link RTT的使用(原理 + 教程 + 应用 + 代码)

    MCU:STM32F407VE MDK:5.29 IAR:8.32 目录--点击可快速直达 目录 写在前面 什么是RTT? RTT的工作原理 RTT的性能 快速使用教程 高级使用教程 附上测试代码 2 ...

  5. 图神经网络 PyTorch Geometric 入门教程

    简介 Graph Neural Networks 简称 GNN,称为图神经网络,是深度学习中近年来一个比较受关注的领域.近年来 GNN 在学术界受到的关注越来越多,与之相关的论文数量呈上升趋势,GNN ...

  6. Quartz:基本用法总结

    OpenSymphony所提供的Quartz是任务调度领域享誉盛名的开源框架.Spring提供了集成Quartz的功能,可以让开发人员以更面向Spring的方式创建基于Quartz的任务调度应用.任务 ...

  7. 分布式一致性算法 Paxos、Raft、Zab的区别与联系

    什么是分布式系统? 拿一个最简单的例子,就比如说我们的图书管理系统.之前的系统包含了所有的功能,比如用户注册登录.管理员功能.图书借阅管理等.这叫做集中式系统.也就是一个人干了好几件事. 后来随着功能 ...

  8. 如何简洁优雅地部署PostgreSQL和Pgweb?

    本文转自Rancher Labs 介绍PostgreSQL和Pgweb PostgreSQL是一款以可靠性和性能为人所熟知的开源数据库.它在很多行业和应用程序中都有应用,尤其是web开发人员的最爱.从 ...

  9. MPI小例子

    MPI示例 MPI时间函数测试 #include<stdio.h> #include<mpi.h> #include<stdlib.h> #include<t ...

  10. Vue | 自定义指令和动态路由实现权限控制

    功能概述: 根据后端返回接口,实现路由动态显示 实现按钮(HTML元素)级别权限控制 涉及知识点: 路由守卫 Vuex使用 Vue自定义指令 导航守卫 前端工程采用Github开源项目Vue-elem ...