# 为考-考试平台
毕业设计:为考-考试系统,后端采用`Spring Cloud`,前端采用`Vue` 3,存储采用`Mysql`,缓存采用`Redis`。完成基本的考试功能。完成了遗传算法自动组卷、文本批量导入题库,邀请码加入课程、数据可视化等一系列前后端功能。悄悄的说一下,如果你觉得本项目还凑合,可以给个`Star` q(≧▽≦q)
## 说明
本项目为本人毕业设计,未经许可,不可用于任何商业用途。禁止通过该项目进行毕设项目买卖
第一次接触`SpringBoot`和`SpringCloud`,为了尽快的完成该项目,很多功能没有进行太多的规划和测试,代码逻辑较乱。只实现了主要功能,本来是想写个学习平台的.但是范围太大,不太好完成.所以就完成了其中的考试功能.
如果你想以本项目做毕设,我建议你可以以完成其他模块入手或者完成本项目没有完成的功能、待优化的功能,如后台管理、错题本,笔记。可以去体验下\*\*通,找找思路,不建议直接使用本项目,毕设应该自己去动动手,这将会是你那简历中挺好的一个经验吧\~。哎\~不过找工作还是好难找不到啊!找前端,哎,后端吧,东西太多记不住,其实我感觉就是人太多,投简历人家都看不见吧~,还有就是自己的基础不牢靠,会模仿着实现一些功能,但很多知识记不住啊!面向百度编程啊!
## 介绍
### 项目地址
#### 为考-考试平台-前端:
Gitee:[https://gitee.com/for-the-exam/exam-web](https://gitee.com/for-the-exam/exam-web)
Github:[https://github.com/baymaxsjj/exam-web](https://github.com/baymaxsjj/exam-web)
#### 为考-考试平台-后端:
Gitee:[https://gitee.com/for-the-exam/exam](https://gitee.com/for-the-exam/exam)
Github:[https://github.com/baymaxsjj/exam](https://github.com/baymaxsjj/exam)
#### 数据库数据填充工具:
专为此项目写的工具,为了给数据库填充点数据,好测试。其实也是为了毕设演示环节有更多的数据进行展示。测试和展示都很好用的工具,可以在你的项目上试试啊!
Gitee:[https://gitee.com/baymaxsjj/sqlmock](https://gitee.com/baymaxsjj/sqlmock)
Github:[https://gitee.com/baymaxsjj/sqlmock](https://gitee.com/baymaxsjj/sqlmock)
### 系统截图
<table>
<tr>
<td><img src="./images/image-20221218155031704.png"/></td>
<td><img src="./images/image-20221218151201308.png"/></td>
<td><img src="./images/image-20221218151234715.png"/></td>
<td><img src="./images/image-20221218151312869.png"/></td>
</tr>
<tr>
<td><img src="./images/image-20230202111804.png"/></td>
<td><img src="./images/image-20221218151535396.png"/></td>
<td><img src="./images/image-20221218151606964.png"/></td>
<td><img src="./images/image-20221218151632484.png"/></td>
</tr>
<tr>
<td><img src="./images/QQ截图20230202112741.png"/></td>
<td><img src="./images/QQ截图20230202112753.png"/></td>
<td><img src="./images/image-20221218152214509.png"/></td>
<td><img src="./images/image-20221218152256006.png"/></td>
</tr>
<tr>
<td><img src="./images/QQ截图20230222201506.png"/></td>
<td><img src="./images/QQ截图20230314161322.png"/></td>
<td><img src="./images/QQ截图20230314162657.png"/></td>
</tr>
</table>
### 系统
- 框架:SpringBoot、SpringCloud、Mybatis Plus、WebSocket
- 数据库:Mysql
- 缓存:Redis
- 前端:Vue 3、Vite、Pinia、Arco UI
### 功能图
![为考考试系统-功能图](./images/为考-在线考试平台.png)
### E-R图
不知道画的对不对,记得上数据库实训的时候,给我那个博客画的E-R图,结果被老师训了一顿。到现在想起还有点害怕>︿<
![为考考试系统-E-R图](./images/系统E-R图.jpg)
### 完成功能
- [x] 创建课程、添加课程、班级码加入课程
- [x] 创建班级、查看班级用户、分享班级码
- [x] 课堂互相实时聊天
- [x] 创建题库、题库树形分类
- [x] 创建题目(单、多、判、填、主观)、修改题目选项
- [x] 创建试卷、修改试卷、手动组卷、遗传算法自动组卷
- [x] 创建考试、修改考试
- [x] 考试控制台、考试概览、老师批阅、数据统计、考试监控
- [x] 参加考试
- [x] 行为监控
- [x] 实时消息通知
- [x] 考试数据导出
- [x] 考生数据统计分析
# 为考-前端
## 配置说明
根据实际环境,更改.env下的请求地址,如后台网关地址,图片资源地址
## 主题
如需更改主题,到下面的网站去制作主题,发布npm,然后把项目中的npm-`@arco-themes/vue-mgo-blog`包改了就行。
Arco UI:使用风格配置平台,轻松定制主题风格,从容应对各种业务需求。https://arco.design/themes
## 安装pnpm
```
npm install pnpm -g
```
## 安装依赖
```
pnpm install
```
## 运行项目
```
pnpm run dev
```
## 打包
```
//编译
pnpm run build
```
# 为考后端
## 功能说明
### 课程中心
主页面只有我的课程是完成的,我的作业 我的考试 我的笔记 消息那些功能都没写
### 个人中心
个人中心只完成信息的显示,没有实现信息的更改,
没有实现校园认证等功能
### 导入题库
导入格式:是学习通的题库导入格式,在本项目的doc下有一个测试题库,可以复制粘贴到导入题库测试。
格式说明:一定要保证格式正确,要不然不能识别。
```tex
序号、题目内容
字母、选项内容(可选):
答案: 答案内容(多个答案用中文分号(;)分割)
例如:
选择题:
27、程序状态字寄存器 PSW 中的 AC=1,表示( )。
A、 计算结果有进位
B、 计算结果有溢出
C、 累加器 A 中的数据有奇数个 1
D、 计算结果低 4 位向高位进位
答案: D
填空题:
20、总线路是用于传送信息的公共通信途径。总线可分为____、____和____。
答案: 数据总线; 地址总线; 控制总线;
```
## 使用说明
### 下载和启动nacos
[nacos官网下载](https://nacos.io/zh-cn/)
```shell
startup.cmd -m standalone
```
### 更改配置
启动数据库:创建并导入本项目中sql目录下的sql文件。
启动`Redis,Nginx`
并修改项目中各个微服务`application.yml`中涉及的用户名和密码
### 本地测试
由于注册功能使用的是邮箱注册登录,在本地测试下如果没有配置邮箱功能,就不能注册,如需测试使用,请使用:
```text
用户名:baymax 密码:s123456
```
### 更改图片上传地址(如果一样的话就可以不用更改)
本地通过开启nginx服务进行静态访问。前端在.env文件中更改图片服务器的地址。
后端在`fte-service/fte-file-service/src/main/resources/application.yml`更该文件保存的路径,并启动`Nginx`服务器把该路径作为服务器逻辑。
> 如果更改了配置,记得在前端`.env`中更改图片地址,要不然图片加载不出来
``` text
#前端.env
VITE_FILE_PATH=http://localhost:10030
```
### 更换 公钥和私钥(可选)
```shell
keytool -genkeypair -alias jwt -validity 3650 -keyalg RSA -dname "CN=jwt,OU=jtw,O=jwt,L=zurich,S=zurich, C=CH" -keypass 12345 -keystore jwt.jks -storepass 12345
```
把这个文件放到认证服务器的resouces目录下
```shell
keytool -list -rfc --keystore jwt.jks | openssl x509 -inform pem -pubkey
```
复制公钥到资源服务器的resouces目录下,public.cert
### 更换邮箱和密码 (可选)
> fte-service/fte-mails-service/src/main/resources/application.yml
```text
mail:
#smtp服务主机 qq邮箱则为smtp.qq.com
host: smtp.qq.com
port: 587
#服务协议
# protocol: smtps
# 编码集
default-encoding: UTF-8
没有合适的资源?快使用搜索试试~ 我知道了~
《学习资料》--为考-后端-毕业设计:在线考试系统,采用SpringCloud+Vue3.zip
共334个文件
java:243个
xml:38个
png:16个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 1 下载量 31 浏览量
2024-04-19
09:03:05
上传
评论 1
收藏 2.29MB ZIP 举报
温馨提示
个人花大量时间整理出的实战资料,内容丰富,文档也很详细。无论做毕业设计还是用于学习技能,或工作中当做参考资料,都能发挥重要作用 亲们下载我任何一个付费资源后,即可私信联系我免费下载其他相关资源哦~ 个人花大量时间整理出的实战资料,内容丰富,文档也很详细。无论做毕业设计还是用于学习技能,或工作中当做参考资料,都能发挥重要作用 亲们下载我任何一个付费资源后,即可私信联系我免费下载其他相关资源哦~ 个人花大量时间整理出的实战资料,内容丰富,文档也很详细。无论做毕业设计还是用于学习技能,或工作中当做参考资料,都能发挥重要作用 亲们下载我任何一个付费资源后,即可私信联系我免费下载其他相关资源哦~
资源推荐
资源详情
资源评论
收起资源包目录
《学习资料》--为考-后端-毕业设计:在线考试系统,采用SpringCloud+Vue3.zip (334个子文件)
.gitignore 445B
.gitignore 430B
.gitignore 430B
.gitignore 395B
.gitignore 395B
.gitignore 395B
.gitignore 395B
.gitignore 395B
.gitignore 395B
.gitignore 395B
.gitignore 395B
.gitignore 395B
EmailCode.html 3KB
gateway.iml 12KB
auth.iml 12KB
generator.iml 5KB
exam.iml 761B
ExamConsoleController.java 18KB
ExamCenterServiceImpl.java 12KB
ExamCenterController.java 11KB
ExamInfoController.java 10KB
ExamPaperController.java 9KB
QuestionController.java 8KB
ClassesController.java 8KB
MessageInfoController.java 8KB
ParseQuestionText.java 7KB
ExamAnswerLogServiceImpl.java 7KB
RedisUtils.java 7KB
CoursesController.java 7KB
QuestionItemController.java 6KB
CourseClassCodeUtil.java 6KB
LoginServiceImpl.java 6KB
Population.java 6KB
AuthorizationManager.java 6KB
ExamConsoleServiceImpl.java 5KB
MessageWebSocketService.java 5KB
GeneratePaperService.java 5KB
MyWebSocketHandler.java 5KB
MailsServiceImpl.java 5KB
TagsController.java 5KB
IpUtils.java 5KB
QuestionServiceImpl.java 5KB
LoginController.java 4KB
Oauth2ServerConfig.java 4KB
ExamAnswerLogController.java 4KB
UserController.java 4KB
User.java 4KB
ResultCode.java 4KB
JoinClassServiceImpl.java 4KB
ResourceServerConfig.java 3KB
JoinClassController.java 3KB
Result.java 3KB
ExamCenterInterceptor.java 3KB
StudentReviewExcel.java 3KB
Paper.java 3KB
UserServiceImpl.java 3KB
ExamScoreRecordController.java 3KB
FileDetailController.java 3KB
ExamQuestionController.java 3KB
UserServiceImpl.java 3KB
CoursesServiceImpl.java 3KB
IBaseEnum.java 2KB
FastAutoGeneratorTest.java 2KB
ExamInfo.java 2KB
JustAuthServiceImpl.java 2KB
WebSecurityConfig.java 2KB
ExamRedisKey.java 2KB
AutomaticPaperConfig.java 2KB
SpringDocConfig.java 2KB
AuthGlobalFilter.java 2KB
Question.java 2KB
MessageInfo.java 2KB
StudentReviewVo.java 2KB
Courses.java 2KB
ParseQuestionTextTest.java 2KB
SecurityInnerAspect.java 2KB
RedisConfig.java 2KB
ExamQuestionServiceImpl.java 2KB
MessageInfoServiceImpl.java 2KB
Mails.java 2KB
RedisLockUtils.java 2KB
ExamScoreRecordServiceImpl.java 2KB
ExamScoreRecord.java 2KB
RestAuthenticationEntryPoint.java 2KB
RestfulAccessDeniedHandler.java 2KB
IJoinClassService.java 2KB
QuestionTypeEnum.java 2KB
UserAuthInfo.java 2KB
ExamClassServiceImpl.java 2KB
ValidExceptionHandler.java 2KB
SecurityUser.java 2KB
JoinClassClient.java 1KB
SecurityUser.java 1KB
ClassesServiceImpl.java 1KB
AccessInFilter.java 1KB
MessageResult.java 1KB
FeignConfig.java 1KB
MyWebSocketInterceptor.java 1KB
WebSocketConfig.java 1KB
UserTokenInterceptor.java 1KB
共 334 条
- 1
- 2
- 3
- 4
资源评论
- eliaukzlx2024-06-05资源质量不错,和资源描述一致,内容详细,对我很有用。
季风泯灭的季节
- 粉丝: 1902
- 资源: 3370
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 410.基于SpringBoot的高校科研信息管理系统(含报告).zip
- 附件1.植物健康状态的影响指标数据.xlsx
- Windows 10 1507-x86 .NET Framework 3.5(包括.NET 2.0和3.0)安装包
- Image_1732500699692.png
- Windows 10 21h1-x86 .NET Framework 3.5(包括.NET 2.0和3.0)安装包
- VMware 是一款功能强大的虚拟化软件,它允许用户在一台物理计算机上同时运行多个操作系统
- 31万条全国医药价格与采购数据.xlsx
- SQL注入详解,SQL 注入是一种常见的网络安全漏洞,攻击者通过在输入数据中插入恶意的 SQL 语句,欺骗应用程序执行这些恶意语句,从而获取、修改或删除数据库中的数据,甚至控制数据库服务器
- 用C语言实现哈夫曼编码:从原理到实现的详细解析
- py爱心代码高级粒子!!
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功