一个基于 SpringBoot + Vue 的在线考试系统

大家好,我是 Java陈序员

今天,给大家介绍一个前后端分离的在线考试系统。

关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。

项目介绍

spring-boot-online-exam ------ 一个基于 Spring Boot + Vue 实现的在线考试系统,支持学生、教师、管理员三种角色。

功能特色

  • 支持单选题、多选题、判断题
  • 支持学生、教师、管理员三种角色
    • 学生:参加考试和查看我的考试
    • 教师:学生的所有权限 + 创建/编辑题目 + 创建/编辑考试
    • 管理员:教师的所有权限 + 管理用户

技术栈

  • 前后端分离,前段组件化,方便二次开发
  • 前端:Vue + AntDesign
  • 后端:SpringBoot + JPA + Swagger2 + JWT

功能图示

考试卡片

问题管理

考试管理

我的考试

快速上手

1、下载代码

bash 复制代码
git clone https://github.com/19920625lsg/spring-boot-online-exam.git

2、初始化数据库

  • 创建数据库
sql 复制代码
CREATE DATABASE `exam` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
  • 执行脚本 spring-boot-online-exam/doc/sql/exam.sql,初始化数据

3、启动后端

  • 将项目以 Maven 项目的形式导入到 IDEA
  • 修改配置文件 spring-boot-online-exam/backend/src/main/resources/application.yml 中的数据库连接信息
yaml 复制代码
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    username: root
    password: aA111111
    url: jdbc:mysql://localhost:3306/exam?characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai
  • 执行主启动类 lsgwr.exam.ExamApplication,启动后端服务

  • 浏览器访问 Swagger 文档地址 http://localhost:9527/swagger-ui.html 说明启动成功

4、启动前端

  • 进入前端代码
bash 复制代码
cd spring-boot-online-exam/frontend/exam/
  • 安装依赖
bash 复制代码
npm install
  • 启动前端
bash 复制代码
npm run serve

5、浏览器访问 http://localhost:8000

默认登录用户名:adminteacherstudent,密码:admin123

arduino 复制代码
项目地址:https://github.com/lsgwr/spring-boot-online-exam

最后

推荐的开源项目已经收录到 GitHub 项目,欢迎 Star

bash 复制代码
https://github.com/chenyl8848/great-open-source-project

或者访问网站,进行在线浏览:

bash 复制代码
https://chencoding.top:8090/#/

大家的点赞、收藏和评论都是对作者的支持,如文章对你有帮助还请点赞转发支持下,谢谢!


相关推荐
Nontee2 小时前
MySQL 插入冲突了怎么办?两种处理方式入门笔记
数据库·笔记·mysql
单线程_012 小时前
从案例分析 Vue3 Tokenizer 源码一
前端·javascript·vue.js
码视野3 小时前
基于 Spring Boot + Vue3 的【大学英语四六级 (CET-4/6) 作文智能评分与句式润色系统】设计与实现(含PRD/三端高保真源码/大屏)
java·前端·人工智能·spring boot·后端·vue3
devilnumber4 小时前
MySQL 性能优化・诗意化记忆
数据库·mysql·性能优化
李昊哲小课5 小时前
SpringBoot4 云端咖啡站 阶段二:数据访问与分层架构
spring boot·架构
liangshanbo12155 小时前
Vue 3 <script setup> 的本质原理是什么?它与普通 setup()有何区别?
前端·javascript·vue.js
宠友信息6 小时前
社区类源码开发实践中的仿小红书系统技术要点分析
java·spring boot·redis·mysql·uni-app·vue·内容运营
摇滚侠7 小时前
《SpringBoot 3:入门与应用实战》第 9 章 使用 WebMvc 开发应用 阅读笔记 1
spring boot·笔记·后端
Lyra_Infra7 小时前
MySQL Docker 误删恢复:binlog PITR
mysql·docker·命令行
李昊哲小课8 小时前
SpringBoot4 云端咖啡站 阶段四:安全、文件与性能
spring boot·安全·性能优化·文件·性能