博主介绍:👉全网个人号和企业号粉丝40W+,每年辅导几千名大学生较好的完成毕业设计,专注计算机软件领域的项目研发,不断的进行新技术的项目实战👈
⭐️热门专栏推荐订阅⭐️ 订阅收藏起来,防止下次找不到🔎百套Python实战项目持续更新中~
有需求的各位可以先收藏起来,还有大家在毕设选题,开题报告有疑惑的都可以找我,给你参考意见,帮你做好开题答辩❤️文末获取源码联系、提供项目参考文档❤️ ⚠️一定要先收藏⚠️
第四章 系统设计
4.1总体功能设计
根据上文中对用户需求的一系列综合细致的分析,针对本学生信息管理系统,得到一个如图4-1所示的宏观的总体功能结构图。
图4-1 系统功能结构图
4.2 数据库E-R图设计
ER图是由实体及其关系构成的图,通过E/R图可以清楚地描述系统涉及到的实体之间的相互关系。在系统中对一些主要的几个关键实体如下图:
4.3数据库的表的设计与开发
在现有的软件工程运行环境中,数据库与数据表的设计都是为了构建最适合最优秀的数据存储框架。建立一个优秀的数据库,必须保证数据的完整、准确,并尽量满足用户对数据存储的需求。那么,数据库中的信息和网络应用程序之间的链接就必须得到保障。在已有的条件下,尽可能地降低占用的数据库的空间资源消耗,使得整个学生信息管理系统能够迅速地做出反应。根据上述原则并结合实际需要,本文采用MySql进行设计。现列出如下几张表。
表4-1:教师
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
gonghao | varchar | 200 | 工号 | ||
mima | varchar | 200 | 密码 | ||
jiaoshixingming | varchar | 200 | 教师姓名 | ||
xingbie | varchar | 200 | 性别 | ||
touxiang | longtext | 4294967295 | 头像 | ||
xueyuan | varchar | 200 | 学院 | ||
zhicheng | varchar | 200 | 职称 | ||
dianhua | varchar | 200 | 电话 | ||
sfsh | varchar | 200 | 是否审核 | 待审核 | |
shhf | longtext | 4294967295 | 审核回复 |
表4-2:公告通知
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
biaoti | varchar | 200 | 标题 | ||
leixing | varchar | 200 | 类型 | ||
tupian | longtext | 4294967295 | 图片 | ||
gonggaoneirong | longtext | 4294967295 | 公告内容 | ||
fabushijian | datetime | 发布时间 |
表4-3:考试记录表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
userid | bigint | 用户id | |||
username | varchar | 200 | 用户名 | ||
paperid | bigint | 试卷id(外键) | |||
papername | varchar | 200 | 试卷名称 | ||
questionid | bigint | 试题id(外键) | |||
questionname | varchar | 200 | 试题名称 | ||
options | longtext | 4294967295 | 选项,json字符串 | ||
score | bigint | 分值 | 0 | ||
answer | varchar | 200 | 正确答案 | ||
analysis | longtext | 4294967295 | 答案解析 | ||
myscore | bigint | 试题得分 | 0 | ||
myanswer | varchar | 200 | 考生答案 |
表4-4:试题表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
paperid | bigint | 所属试卷id(外键) | |||
papername | varchar | 200 | 试卷名称 | ||
questionname | varchar | 200 | 试题名称 | ||
options | longtext | 4294967295 | 选项,json字符串 | ||
score | bigint | 分值 | 0 | ||
answer | varchar | 200 | 正确答案 | ||
analysis | longtext | 4294967295 | 答案解析 | ||
type | bigint | 试题类型,0:单选题 1:多选题 2:判断题 3:填空题(暂不考虑多项填空) | 0 | ||
sequence | bigint | 试题排序,值越大排越前面 | 100 |
表4-5:学生
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
xuehao | varchar | 200 | 学号 | ||
mima | varchar | 200 | 密码 | ||
xingming | varchar | 200 | 姓名 | ||
xingbie | varchar | 200 | 性别 | ||
touxiang | longtext | 4294967295 | 头像 | ||
xueyuan | varchar | 200 | 学院 | ||
zhuanye | varchar | 200 | 专业 | ||
banji | varchar | 200 | 班级 | ||
shouji | varchar | 200 | 手机 |
表4-6:试卷表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
name | varchar | 200 | 试卷名称 | ||
time | int | 考试时长(分钟) | |||
status | int | 试卷状态 | 0 |
表4-7:选课信息
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
kechengmingcheng | varchar | 200 | 课程名称 | ||
kechengleixing | varchar | 200 | 课程类型 | ||
xuankeshuoming | longtext | 4294967295 | 选课说明 | ||
gonghao | varchar | 200 | 工号 | ||
kexuanrenshu | int | 选课人数 | |||
xuankeshijian | date | 选课时间 | |||
xuehao | varchar | 200 | 学号 | ||
xingming | varchar | 200 | 姓名 | ||
xueyuan | varchar | 200 | 学院 | ||
banji | varchar | 200 | 班级 | ||
crossuserid | bigint | 跨表用户id | |||
crossrefid | bigint | 跨表主键id |
表4-8:毕业信息
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
jiuyeqiye | varchar | 200 | 就业企业 | ||
jiuyedidian | varchar | 200 | 就业地点 | ||
gonghao | varchar | 200 | 工号 | ||
jiaoshixingming | varchar | 200 | 教师姓名 | ||
jiuyeshijian | varchar | 200 | 就业时间 | ||
jiuyefangxiang | varchar | 200 | 就业方向 | ||
lixiaoshijian | varchar | 200 | 离校时间 | ||
xinxibeizhu | longtext | 4294967295 | 信息备注 | ||
xuehao | varchar | 200 | 学号 | ||
xingming | varchar | 200 | 姓名 | ||
shouji | varchar | 200 | 手机 |
表4-9:token表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
userid | bigint | 用户id | |||
username | varchar | 100 | 用户名 | ||
tablename | varchar | 100 | 表名 | ||
role | varchar | 100 | 角色 | ||
token | varchar | 200 | 密码 | ||
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP | ||
expiratedtime | timestamp | 过期时间 | CURRENT_TIMESTAMP |
表4-10:课程信息
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
kechengmingcheng | varchar | 200 | 课程名称 | ||
kechengleixing | varchar | 200 | 课程类型 | ||
shangkeshijian | date | 上课时间 | |||
shangkedidian | varchar | 200 | 上课地点 | ||
renkejiaoshi | varchar | 200 | 任课教师 | ||
kexuanrenshu | int | 可选人数 | |||
kechengjieshao | longtext | 4294967295 | 课程介绍 | ||
gonghao | varchar | 200 | 工号 |
表4-11:综合素质
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
xuehao | varchar | 200 | 学号 | ||
xingming | varchar | 200 | 姓名 | ||
xueyuan | varchar | 200 | 学院 | ||
banji | varchar | 200 | 班级 | ||
xuexinengli | varchar | 200 | 学习能力 | ||
sixiangpinde | varchar | 200 | 思想品德 | ||
yundongjiankang | varchar | 200 | 运动健康 | ||
xinlisuzhi | varchar | 200 | 心理素质 | ||
laoshipingjia | longtext | 4294967295 | 老师评价 | ||
pingjiariqi | date | 评价日期 | |||
gonghao | varchar | 200 | 工号 | ||
jiaoshixingming | varchar | 200 | 教师姓名 |
表4-12:课程类型
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
kechengleixing | varchar | 200 | 课程类型 |
表4-13:学生考勤
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
mingcheng | varchar | 200 | 名称 | ||
kaoqinriqi | date | 考勤日期 | |||
xuehao | varchar | 200 | 学号 | ||
xingming | varchar | 200 | 姓名 | ||
kaoqinzhuangkuang | varchar | 200 | 考勤状况 | ||
kaoqinshuoming | longtext | 4294967295 | 考勤说明 | ||
gonghao | varchar | 200 | 工号 | ||
jiaoshixingming | varchar | 200 | 教师姓名 |
表4-14:课程成绩
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
kechengmingcheng | varchar | 200 | 课程名称 | ||
xuehao | varchar | 200 | 学号 | ||
xingming | varchar | 200 | 姓名 | ||
banji | varchar | 200 | 班级 | ||
fenshu | float | 分数 | |||
chengji | varchar | 200 | 成绩 | ||
fabushijian | datetime | 发布时间 | |||
gonghao | varchar | 200 | 工号 | ||
jiaoshixingming | varchar | 200 | 教师姓名 | ||
crossuserid | bigint | 跨表用户id | |||
crossrefid | bigint | 跨表主键id |
第五章 系统运行
5.1系统登录实现
系统登录,在登录页面选择需要登录的角色,在正确输入用户名和密码后,进入操作系统进行操作;如图5-1所示。
图5-1 系统登录界面
系统注册:在系统注册页面的输入栏中输入用户注册信息进行注册操作,系统注册页面如图5-2所示:
图5-2系统注册页面
5.2管理员模块实现
管理员进入主页面,主要功能包括对系统首页、个人中心、学生管理、教师管理、公告通知管理、课程类型管理、课程信息管理、选课信息管理、课程成绩管理、毕业信息管理、学生考勤管理、综合素质管理等进行操作。管理员主页面如图5-3所示:
图5-3 管理员主界面
源码获取
大家点赞、收藏、关注 ,让更多需要的同学看到
不同开发语言专栏推荐订阅:
👇下方有我的微信名片👇