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

相关推荐
梵得儿SHI1 分钟前
Java 反射机制深度解析:从运行时 “解剖” 类的底层逻辑
java·开发语言·反射·反射机制·private·类成员·反射的三大核心功能
CodeSheep2 分钟前
大家有没有发现一个奇特现象:你能在一个公司工作 12 年以上,无论你多忠诚多卖力,一旦公司赚的少了,那你就成了“眼中钉肉中刺”
前端·后端·程序员
豆沙沙包?8 分钟前
2025年--Lc188--931. 下降路径最小和(多维动态规划,矩阵)--Java版
java·矩阵·动态规划
JAVA学习通17 分钟前
Spring AI 1.0 GA 深度解析:Java生态的AI革命已来
java·人工智能·spring·springai
南囝coding30 分钟前
《独立开发者精选工具》
前端·后端·开源
IT_陈寒34 分钟前
JavaScript 性能优化的 7 个致命陷阱:我从 P5 到 P8 的核心突破都在这里!
前端·人工智能·后端
黄焖鸡能干四碗40 分钟前
MES生产执行制造系统建设(Java+Mysql)
java·大数据·开发语言·信息可视化·需求分析
舒克日记1 小时前
基于springboot的民谣网站的设计与实现
java·spring boot·后端
风象南1 小时前
除了JSON/XML,你还应该了解的数据描述语言ASN.1 —— 附《SpringBoot实现ASN.1在线解析工具》
后端
JaguarJack1 小时前
深入理解 PHP-FPM 的最佳配置
后端·php