基于 Spring Boot 与 Vue 的在线考试系统设计与实现
项目背景与技术选型
随着信息技术的飞速发展,传统纸质考试在大规模管理、评分效率及数据分析方面逐渐显露出局限性。为了解决这些问题,我们设计并实现了一套基于 Java Web 技术的在线考试系统。后端采用 Spring Boot 框架,利用其轻量级和快速开发的优势;前端使用 Vue 技术构建直观的用户界面;数据存储则选用 MySQL 数据库,确保数据的安全性与高效访问。
系统旨在为学生、教师和管理员提供一个高效、便捷且安全的在线考试平台。通过模块化设计,不仅提升了考试管理的效率,降低了运营成本,还能为教育机构提供精确的数据分析和实时反馈。
核心功能模块
系统主要包含学生、教师和管理员三个角色,每个角色拥有不同的功能权限:
- 学生用户:支持在线考试、查看考试资讯、浏览通知公告、管理个人账户信息及查看错题记录等。
- 教师用户:负责管理试题库、生成试卷、批改考试并对成绩进行统计分析。
- 管理员:负责系统用户管理、轮播图管理、资源管理等后台操作,确保平台稳定运行。
1. 学生端功能
学生登录后,首页展示核心内容入口,包括轮播图、最新通知和考试资讯。通过导航栏可快速进入在线考试模块,系统支持选择题、填空题等多种题型,自动计时并在结束后展示成绩。个人中心提供了错题记录和收藏功能,帮助学生复习薄弱环节。
2. 教师端功能
教师后台首页展示数据统计信息。核心功能包括试题库管理(增删改查、批量导入)、试卷列表管理及评分功能。支持自动评分与人工评分结合,确保成绩准确性。教师还可以查看学生的答题详情和统计报告。
3. 管理员端功能
管理员拥有最高权限,可管理系统用户(审核、删除、权限设置)、轮播图内容及通知公告。资源管理模块允许上传和编辑文章、图片等资源。此外,管理员可查看全系统的错题记录并进行统计分析,辅助教学决策。
系统架构设计
系统采用前后端分离架构,分为 View 层、Controller 层、Model 层、DAO 层和持久化数据存储层。
- View 层:Vue 构建的前端页面,支持浏览器访问。
- Controller 层:接收前端请求参数,处理业务逻辑。
- Model 层:服务层,处理核心业务规则。
- DAO 层:访问数据库,实现数据持久化。
这种分层结构保证了系统的稳定性与可扩展性,便于后续维护和功能迭代。
数据库设计
数据库设计遵循规范化原则,以下是核心表结构概览:
用户与权限相关
| 表名 | 说明 |
|---|---|
| user | 用户账户基础信息 |
| auth | 用户权限管理 |
| user_group | 用户组配置 |
考试与试题相关
| 表名 | 说明 |
|---|---|
| exam_question_database | 试题库 |
| subject_exam | 考试安排 |


