基于Springboot+Vue前后端分离的在线考试系统

项目介绍

本项目为学科在线考试系统,目的就是帮助在疫情期间帮助大家更好地进行线上考试和练习。老师可以更好地测试学生的学习情况,进行相关的数据收集和数据分析;学生可以在系统上查看考试和测试信息,提交自己的做题结果,立刻获得分数,获得比较好的学习效果的反馈,同时也有分数统计和分析功能,此外,学生还可以进行留言相互交流和评论,以及与老师和管理人员进行更好地沟通。

在业务功能方面,对于老师,则可以进行考试的发布,学生的增删查改,试题库的增删查改,学生成绩的查看和统计,在数据分析上有折线图,条形图,饼状图等。对于学生则可以进行考试和自测,提交后立即查看考试结果,得到相关的考试结果反馈。

同时还有超级管理员对于学生账户信息和老师账户信息的维护,同时保证各项数据的安全和稳定。

项目的技术特点是采用前后端分离的开发模式,耦合性较低,前后端依据事前商定的接口对接数据,前端采用Vue框架,后端采用Springboot+Mybatis框架,持久化方案采用MySQL。

本项目主要借鉴学习了GitHub上一个开源项目,地址如下
https://github.com/YXJ2018/SpringBoot-Vue-OnlineExam

环境

1.1 Windows10系统

1.2 谷歌浏览器

1.3 JDK8

1.4 Npm 6.14.13

1.5 Node 14.17.3

1.6 MySQL 5.7

1.7 Maven

1.8 IDEA

项目安装

2.1 后台运行
将后端代码解压缩,使用IDEA按照maven项目进行导入,自动下载完依赖后,测试连接本地数据库。

2.2 数据库导入
将数据库备份文件运行即可导入数据库。

2.3 前端运行
将前端代码解压缩,在代码目录下打开控制台npm install,然后npm run dev即可运行。

项目需求设计

  1. 教师端
    (1)发布考试
    (2)试题的增删查改
    (3)查看学生成绩
    (4)学生管理

  2. 学生端
    (1)试卷和练习的查看
    (2)进行考试和提交试题
    (3)查看自己得分和分析
    (4)进行留言和评论
    (5)搜索相关试题练习

  3. 管理员端
    (1)进行用户的管理
    (2)进行数据的备份
    (3)进行数据的管理

数据库设计

在这里插入图片描述
在这里插入图片描述
3.1管理题库
老师 (老师ID,姓名,邮箱,学院,密码,角色)
题库 (题目编号,分值,选择题,判断题,填空题)
管理题库(ID,题目编号)

3.2 生成试卷
题库 (题目编号,分值,选择题,判断题,填空题)
试卷 (试卷编号,名称,描述)
生成 (题目编号,试卷编号)

3.3 学生考试
学生 (学号,姓名,专业,年级,班级,角色)
试卷 (试卷编号,名称,描述)
考试 (学号,试卷编号,成绩)

3.4 学生查看成绩
学生 (学号,姓名,专业,年级,班级,角色)
成绩 (分数ID,考试编号,学号,成绩,日期)
查看成绩 (学号,分数ID,成绩)

3.5 老师查看成绩
老师 (老师ID,姓名,邮箱,学院,密码,角色)
成绩 (分数ID,考试编号,学号,成绩,日期)
查看成绩 (老师ID,分数ID,成绩)

3.6 进行留言
学生 (学号,姓名,专业,年级,班级,角色)
留言区 (留言编号,标题,内容,日期)
留言 (学号,留言编号)

3.7 对留言评论
学生 (学号,姓名,专业,年级,班级,角色)
评论区 (评论编号,留言编号,内容,日期)
评论 (学号,评论编号)

业务设计

  1. 教师端
    (1)发布考试
    (2)试题的增删查改
    (3)查看学生成绩
    (4)学生管理

  2. 学生端
    (6)试卷和练习的查看
    (7)进行考试和提交试题
    (8)查看自己得分和分析
    (9)进行留言和评论
    (10)搜索相关试题练习

  3. 管理员端
    (4)进行用户的管理
    (5)进行数据的备份
    (6)进行数据的管理
    在这里插入图片描述

项目截图

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

代码获取

可以直接参考原项目的开源代码
https://github.com/YXJ2018/SpringBoot-Vue-OnlineExam

猜你喜欢

转载自blog.csdn.net/david2000999/article/details/125257013