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 班级

相关推荐
方圆想当图灵11 分钟前
缓存之美:万文详解 Caffeine 实现原理(下)
java·redis·缓存
栗豆包25 分钟前
w175基于springboot的图书管理系统的设计与实现
java·spring boot·后端·spring·tomcat
等一场春雨1 小时前
Java设计模式 十四 行为型模式 (Behavioral Patterns)
java·开发语言·设计模式
萧若岚1 小时前
Elixir语言的Web开发
开发语言·后端·golang
Channing Lewis1 小时前
flask实现重启后需要重新输入用户名而避免浏览器使用之前已经记录的用户名
后端·python·flask
Channing Lewis2 小时前
如何在 Flask 中实现用户认证?
后端·python·flask
酱学编程2 小时前
java中的单元测试的使用以及原理
java·单元测试·log4j
我的运维人生2 小时前
Java并发编程深度解析:从理论到实践
java·开发语言·python·运维开发·技术共享
一只爱吃“兔子”的“胡萝卜”2 小时前
2.Spring-AOP
java·后端·spring
HappyAcmen2 小时前
Java中List集合的面试试题及答案解析
java·面试·list