近几天自己搞了个在线考试系统,功能已经实现,现在分享给大家,希望对大家有帮助。
gitee链接: https://gitee.com/xiaotianen/qcby
技术栈选型
JDK版本:1.8
Maven版本:3.5.3
本次项目使用java框架:spring + springmvc + mybatis
数据库使用版本为 mysql 5.7
前端使用 layui框架
模板引擎 Thymeleaf
开发工具为 IntelliJ IDEA 2020.1 、Navicat
Linux部署环境为 Centos 7
功能介绍
- 首先整个网站登录分为教师端和学生端,其实还应该有一个超级管理员,为了方便我这里没有设置管理员,这个根据个人所需可以才加上。
- 公共的功能接口:登录、注册、找回密码、注册账号、退出当前账号
密码采用MD5加密方式,找回密码发送手机验证码用到了阿里云短信接口 - 教师端功能
- 可查看自己所教课程目录,对课程目录进行增删操作
- 出题:在出题过程中可自主命题、也可从题库导入试题,也可以根据题目正确率情况组卷。
- 对每一次的测试查看学生成绩,查看排名
- 查看题目的解答情况,包括提交人数以及正确提交人数和正确率情况
- 可批量录入学生名单,用到了上传功能以及java的poi操作excel表格,也可以对学生进行补录
- 查看学生名单
- 试卷预览、发布
- 对于选择题自动判读,给出分数,具体给分
- 采取session验证登录,前后端均采取了判断
具体页面演示
- 登录、注册、找回密码界面
- 教师端界面
- 教师查看课程目录
- 自主命题以及题库导入试题、根据题目正确率情况组卷
- 试卷预览、发布
- 查看每次测试题目解答情况
- 学生录入模块演示
- 查看学生名单
- 教师查看课程目录
- 学生端页面
- 查看课程考试信息,对于每一次的考试给出信息,包括考试是否进行中,是否开始、考试是否截至,这块为防止攻击在后端接口做了判断。
- 开始考试,得到试卷,提交试卷,得到选择题分数
- 历史成绩查询界面
- 错题查询界面,这里有个细节就是在考试进行中是不可以参考错题的
- 查看课程考试信息,对于每一次的考试给出信息,包括考试是否进行中,是否开始、考试是否截至,这块为防止攻击在后端接口做了判断。
- 资料修改
- 密码修改
- 验证是否登录以及退出功能演示
注意:tomcat的启动路径需要改成 /qcby