这次跑的是开源项目 spring-boot-online-exam(在线考试系统,lsgwr):MIT 协议。前后端分离——后端 Java 21 + Spring Boot 4.1 + JPA + JWT,前端 Vue 3 + Vite + Element Plus + ECharts;覆盖题库、组卷、在线作答、自动判分、学情分析与用户/学科管理,并适配桌面与移动端。相比站内已发的通用中后台或电商类项目,本篇聚焦「在线考试」业务场景,适合课程设计、培训考核与二次开发练手。
项目信息
- 项目名称:spring-boot-online-exam 在线考试系统
- 上游仓库:https://github.com/lsgwr/spring-boot-online-exam
- 授权协议:MIT License
- 版本:2.0.0(上游默认分支;commit f893949)
- 后端技术:Java 21、Spring Boot 4.1、Spring Data JPA、JWT、springdoc OpenAPI、MySQL 8
- 前端技术:Vue 3、Vite、Pinia、Element Plus、WangEditor、ECharts
- 本地运行:后端 9527,前端开发 5173(均绑定 127.0.0.1);亦可 Docker Compose 一键到 9527
- 测试账号:admin / teacher / student,密码均为 admin123
功能亮点
- 三角色:学生作答与查卷、教师维护题库/组卷/看成绩、管理员管用户与学科
- 题库:单选/多选/判断,支持批量导入与富文本编辑
- 试卷与考场:组卷、限时、开始作答、自动判分
- 学情:概览卡片、得分率分布、最近答卷与各场考试统计
- 系统:学科管理、用户与角色(管理员/教师/学生)
运行记录
本地使用 Docker 启动 MySQL 8(仅监听 127.0.0.1:3306),导入 doc/sql/exam.sql。JDK 21 + Maven 打包后端 jar 后以 server.address=127.0.0.1 启动;前端 npm ci && npm run dev -- --host 127.0.0.1。以管理员登录后截取了登录页、学情概览、考场、题库、试卷、学情成绩、我的答卷、学科、用户、注册页与作答页等界面。
源码包已去除 node_modules、target、.git 与 IDE 配置;JWT 密钥与数据库口令替换为占位符;保留 SQL、Docker Compose 与 RUN-DEMO.md。
源码下载:本篇完整源码包(springboot-online-exam.zip,约 5.1 MB)支持积分兑换。登录后每日签到即可免费领积分,请通过本文顶部 「付费资源」下载卡片 直接兑换获取。
运行截图
登录页

学情概览

考场

题库

试卷

学情成绩

我的答卷

学科管理

用户管理

注册页

本地部署步骤(摘要)
- 准备 MySQL 8,创建库
exam并导入doc/sql/exam.sql - 修改
application.yml中的数据库口令与 JWT,然后cd backend && mvn spring-boot:run(或直接运行打包 jar) cd frontend && npm ci && npm run dev -- --host 127.0.0.1- 或根目录
docker compose up --build后访问 9527 - 浏览器打开前端,使用 admin / admin123 登录
更完整说明见源码包内 RUN-DEMO.md。
小结
spring-boot-online-exam 的特色是「考试业务闭环 + 现代前后端栈」:JWT 鉴权、三角色权限、题库组卷判分与 ECharts 学情一应俱全,前端已是 Vue 3 + Element Plus。适合课程/毕业设计与培训系统二次开发;上线前请替换默认账号、JWT 与数据库口令。本站提供的是脱敏后的完整源码包,方便本地复现截图中的界面。














暂无评论内容