java智能在线考试系统源码 基于SpringBoot+Vue开发
环境介绍
语言环境:Java: jdk1.8
数据库:Mysql: mysql5.7
应用服务器:Tomcat: tomcat8.5.31
开发工具:IDEA或eclipse
开发技术:Springboot+Vue
项目简介:
随着计算机技术、网络技术的不断发展,利用计算机来辅助教学提高教育质量是未来发展的必然趋势。计算机深入到日常工作和生活的方方面面,是我们学习和工作的得力助手。各行各业的人们都在使用计算机完成许许多多复杂的工作。今天,我们使用计算机研究智能在线考试系统,为许多高校学子和老师搭建一个便利的平台。考试系统是一个教育单位不可缺少的部分,但一直以来人们使用传统人工纸质的方式来考试测评,这种考试测评方式存在着许多弊端,如:效率低、保密性差,时间过长,将产生大量的文件和数据,这对于批改、查找、更新和维护考试试卷都带来了不少困难。而使用计算机对学生考试,具有纸质考试不能达到的优势。查找方便、可靠性高、保密性好、寿命长等等这些优点能够极大的提高学生考试的效率。当然,考试系统使用计算机也存在一些弊端,研究教考分离的考试系统开发和设计过程中,我们也需要尽可能减少弊端所带来的影响。
本课题的研究内容是开发设计一个用于高等院校的教考分离考试系统,使得老师和学生可以通过网络进行在线考试、进行学习评价。
本文旨在设计与开发一套基于Springboot的智能在线考试系统,详细分析了智能在线考试系统的架构,确立了各个模块之间的关系,对题库管理、科目管理、组卷管理、考试功能、判卷功能、成绩管理等功能模块进行的分析、设计、实现、测试完成了一整套的智能在线考试系统。
本系统设计了两种用户角色:管理员(老师)角色和考生(学生)角色。管理员可以进入后台管理界面对其后台进行用用户管理、卷题管理、任务管理,学科管理、成绩管理、消息中心的发送、日志中心的管理等,学生自然就是进入学生界面,进行相应的考试、在线答题、查看错题集等操作。
系统展示
前端登录与注册页面由login.vue实现,用户信息由userInfo.vue实现。用户首先需要输入用户名和邮箱,之后点击发送验证码,前端会将用户名和邮箱通过/api/sendCode提交到后端。后端接受到数据之后,首先会验证邮箱是否符合格式,邮箱是否已经被注册,如果条件成立,则返回相关提示信息。否则将生成验证码,通过邮件发送至用户邮箱,同时将邮箱和验证码存储于session中。之后用户需要将其他信息填写完毕,并且输入验证码,点击注册,前端会通过/api/register接口将数据提交到后端。后端收到数据后,首先会通过提交信息的邮箱从session中读取之前存储的验证码并进行对比,如果不一致,则返回验证码无效提示信息,否则继续业务。之后会验证邮箱是否符合规范,以及是否被注册,如果验证通过,则后端调用服务层类userService的register方法添加用户,register方法首先会将用户的密码进行MD5加密,填充注册时间,用户状态等信息,然后通过持久层类userMapper的方法将用户信息提交至数据库。提交成功之将创建用户的文件仓库,通过调用fileStoreService的 createFileStore方法创建对应用户的文件仓库并提交到数据库。界面实现效果如图5-1所示。
完成注册之后用户就可以登录了。输入用户名和密码之后点击登录,前端会将携带用户名与密码通过/api/login接口提交至后端,后端调用服务层类userService的login方法来处理数据。首先会将用户的明文密码使用MD5加密,之后通过持久层类userMapper的方法去数据库中查询是否存在对应用户名的用户,然后对比密码是否正确,并返回相应结果至控制层。如果账户密码正确,则将查询到的用户数据存储于session中,并且生成token提交至数据库中。之后将提示信息与token返回至前端,前端会将token存储于cookie中,以保持登录状态。