SpringBoot框架:作业管理技术新解

4 系统设计

4.1系统概要设计

作业管理系统并没有使用C/S结构,而是基于网络浏览器的方式去访问服务器,进而获取需要的数据信息,这种依靠浏览器进行数据访问的模式就是现在用得比较广泛的适用于广域网并且没有网速限制要求的B/S结构,图4.1就是开发出来的程序工作原理图。

图4.1 程序工作的原理图

4.2系统功能结构设计

下图就是系统功能结构图。

图4.1 系统功能结构图

4.3数据库设计

4.3.1数据库E-R图设计

程序设计是离不开对应数据库的设计操作的,这样的做法就是减少数据对程序的依赖性,所以数据库的设计也是需要花费大量的日常时间来进行设计的,在设计中对程序开发需要存储的数据信息进行实体划分,先确认实体,然后设计实体的属性等操作,这种设计就是数据库设计里面不能少的必须有的E-R模型设计。为了降低程序设计的对应的数据库设计难度,开发人员也可以使用相应的工具来进行E-R模型设计,现在市面上设计E-R模型的工具有PowerDesigner建模工具,Navicat制作工具,还有微软的Visio绘图工具。为了简便起见,本程序在设计E-R模型的时候,就选用了微软的Visio这款功能强大,操作便利的绘图工具。

下面就展示作业管理系统的实体E-R图。

(1)下图就是管理员实体E-R图

图4.7 管理员实体E-R图

(2)下图就是教师实体E-R图

图4.8 教师实体E-R图

(3)下图就是学生信息实体E-R图

图4.9 学生信息实体E-R图

4.3.2 数据库表结构设计

本次程序开发选用的数据库管理工具是MySQL数据管理工具,使用它存放数据也需要创建程序对应的数据库文件,并命名刚创建的数据库文件,有了数据库也需要创建各种数据表来充实数据库,在数据表的创建中,不仅需要对数据表命名,也需要对数据表的字段进行设计,包括每个数据表里面需要设置的字段名称,字段对应的数据类型信息,字段的主键设置这个也是不可缺少的,因为每个数据表里面的主键就是标记着这个数据表跟其他数据表相区分的唯一标志。就相当于生活中的每个人都有姓名,但是上网搜索自己的名字,会发现全国上下有很多人的名字跟自己的名字一模一样,包括姓氏以及名字,区分每个人的唯一信息就是每个人的身份证号信息,主键在数据表里面也是起着这样的重要作用。下面就介绍本次开发的程序作业管理系统的数据表结构信息。

表4.1 班级信息表

字段 类型 空 默认 注释

id (主键) bigint(20) 否 主键

addtime timestamp 否 CURRENT_TIMESTAMP 创建时间

banji varchar(200) 否 班级

表4.2 教师信息表

字段 类型 空 默认 注释

id (主键) bigint(20) 否 主键

addtime timestamp 否 CURRENT_TIMESTAMP 创建时间

gonghao varchar(200) 否 工号

mima varchar(200) 否 密码

jiaoshixingming varchar(200) 是 NULL 教师姓名

xingbie varchar(200) 是 NULL 性别

touxiang varchar(200) 是 NULL 头像

banji varchar(200) 是 NULL 班级

youxiang varchar(200) 是 NULL 邮箱

dianhua varchar(200) 是 NULL 电话

表4.3 管理员信息表

字段 类型 空 默认 注释

id (主键) bigint(20) 否 主键

username varchar(100) 否 用户名

password varchar(100) 否 密码

role varchar(100) 是 管理员 角色

addtime timestamp 否 CURRENT_TIMESTAMP 新增时间

表4.4 学生信息表

字段 类型 空 默认 注释

id (主键) bigint(20) 否 主键

addtime timestamp 否 CURRENT_TIMESTAMP 创建时间

xuehao varchar(200) 否 学号

mima varchar(200) 否 密码

xueshengxingming varchar(200) 是 NULL 学生姓名

xingbie varchar(200) 是 NULL 性别

touxiang varchar(200) 是 NULL 头像

yuanxi varchar(200) 是 NULL 院系

banji varchar(200) 是 NULL 班级

shouji varchar(200) 是 NULL 手机

youxiang varchar(200) 是 NULL 邮箱

表4.5 作业点评信息表

字段 类型 空 默认 注释

id (主键) bigint(20) 否 主键

addtime timestamp 否 CURRENT_TIMESTAMP 创建时间

zuoyebianhao varchar(200) 是 NULL 作业编号

zuoyebiaoti varchar(200) 是 NULL 作业标题

xuehao varchar(200) 是 NULL 学号

xueshengxingming varchar(200) 是 NULL 学生姓名

wanchengneirong varchar(200) 是 NULL 完成内容

pingyu longtext 是 NULL 评语

riqi datetime 是 NULL 日期

gonghao varchar(200) 是 NULL 工号

jiaoshixingming varchar(200) 是 NULL 教师姓名

banji varchar(200) 是 NULL 班级

表4.6 作业提交信息表

字段 类型 空 默认 注释

id (主键) bigint(20) 否 主键

addtime timestamp 否 CURRENT_TIMESTAMP 创建时间

zuoyebianhao varchar(200) 是 NULL 作业编号

zuoyebiaoti varchar(200) 是 NULL 作业标题

zuoyeneirong varchar(200) 是 NULL 作业内容

gonghao varchar(200) 是 NULL 工号

jiaoshixingming varchar(200) 是 NULL 教师姓名

banji varchar(200) 是 NULL 班级

neirongbiaoti varchar(200) 是 NULL 内容标题

wanchengneirong varchar(200) 是 NULL 完成内容

tijiaozuoye varchar(200) 是 NULL 提交作业

tijiaoriqi date 是 NULL 提交日期

xuehao varchar(200) 是 NULL 学号

xueshengxingming varchar(200) 是 NULL 学生姓名

表4.7 作业信息表

字段 类型 空 默认 注释

id (主键) bigint(20) 否 主键

addtime timestamp 否 CURRENT_TIMESTAMP 创建时间

zuoyebianhao varchar(200) 是 NULL 作业编号

zuoyebiaoti varchar(200) 否 作业标题

zuoyewenjian varchar(200) 是 NULL 作业文件

zuoyeneirong varchar(200) 是 NULL 作业内容

faburiqi date 是 NULL 发布日期

gonghao varchar(200) 是 NULL 工号

jiaoshixingming varchar(200) 是 NULL 教师姓名

banji varchar(200) 是 NULL 班级

相关推荐
求知若饥4 分钟前
NestJS 项目实战-权限管理系统开发(六)
后端·node.js·nestjs
禁默33 分钟前
深入浅出:AWT的基本组件及其应用
java·开发语言·界面编程
Cachel wood39 分钟前
python round四舍五入和decimal库精确四舍五入
java·linux·前端·数据库·vue.js·python·前端框架
Code哈哈笑42 分钟前
【Java 学习】深度剖析Java多态:从向上转型到向下转型,解锁动态绑定的奥秘,让代码更优雅灵活
java·开发语言·学习
gb42152871 小时前
springboot中Jackson库和jsonpath库的区别和联系。
java·spring boot·后端
程序猿进阶1 小时前
深入解析 Spring WebFlux:原理与应用
java·开发语言·后端·spring·面试·架构·springboot
zfoo-framework1 小时前
【jenkins插件】
java
风_流沙1 小时前
java 对ElasticSearch数据库操作封装工具类(对你是否适用嘞)
java·数据库·elasticsearch
颜淡慕潇1 小时前
【K8S问题系列 |19 】如何解决 Pod 无法挂载 PVC问题
后端·云原生·容器·kubernetes