## 后台代码
 :point_right: [manager-service](https://github.com/1345414527/manager_service)
<br/>
## 视频演示
 :point_right:[b站视频](https://www.bilibili.com/video/bv13C4y1b7NS)
<br/>
## 项目基本功能
 本在线考试系统主要完成了
1. 用户注册,根据用户名和密码实现注册
2. 用户登录,分为账号密码登录,短信登录,邮箱登录
3. 用户信息完善,用户基本信息填写(头像,名称,年龄,地区,学号,手机号,邮箱号)。
4. 用户信息搜索,根据输入的关键字进行信息检索,查看用户的数据。可以通过聚合条件检索。管理员可以查看完整数据和统计信息。
5. 用户管理,管理员可以查看用户的相关数据,并进行管理员的分配。
6. 考生管理,管理员考生考试的管理,可以查看考生考试的信息,考生试卷,重置试卷,再次考试,无条件删除考生订阅信息。
7. 学科管理,管理员可以查看所有学科信息,添加学科,修改学科信息,删除(是否启用)学科。
8. 试题管理,管理员可以查看所有试题信息,添加试题,修改试题信息,删除(是否启用)学科。
9. 试卷管理,管理员可以查看所有试卷信息,添加试卷,修改试卷信息,删除(是否启用)试卷。可以预览试卷,并且可以选择是否发布试卷。
10. 考试管理,发布好的试卷会进入考试管理,管理员可以为试卷设置考试试卷,取消试卷发布和预览试卷。
11. 答题管理,管理员可以查看每个试题的答题情况,并进行答题情况统计(答题人数,答题总数,错误率)
12. 考试订阅,考生可以查看已经发布了的考试,可以订阅已发布并且设置了考试时间的考试,并且有条件的删除订阅
13. 在线考试答题,考生可以查看已订阅的考试信息,答题次数,并且进行答题,考完之后可以查看试卷和分数,有条件的删除订阅。
14. 成绩查询,考生可以查看订阅试卷的基本信息,分数以及答题次数。
15. 单个考生的数据统计,考生可以查看自己不同学科的近6次考试情况的统计,考试试卷分布图,学科考试次数比例图,不同学科的答题数。
16. 全部考生的数据统计,管理员可以查看全部考生不同学科的近20次考试情况的统计,考试试卷分布图,学科考试次数比例图,不同学科的答题数。
17. 用户数据统计,管理员可以查看全部用户的地理分布情况,不同年龄的用户数量分布,近6个月的用户注册数和平均年龄。
18. 日志管理,管理员可以查看关于考试的日志记录。
<br/>
<br>
## 系统架构
 在线考试系统`主要采用`Vue+SpringBoot+SpringCloud+Mybatis框架开发。内部采用标准的MVC架构进行基本框架搭建。通过Ngnix进行反向代理,服务器采用Docker进行统一管理,使用FastDFS完成远程的文件上传。具体的使用技术请看:point_right:[技术选型](#techSelect)
![](https://imgconvert.csdnimg.cn/aHR0cHM6Ly95YW54dWFuLm5vc2RuLjEyNy5uZXQvMTIyYTA1ZDc3ZmFiNjJmZDRhYjdmZWRhMDkyYjQxYTUuanBn?x-oss-process=image/format,png)
<br/>
<br/>
<span id="techSelect"></span>
<br/>
## 技术选型
### 前台
| 技术 | 介绍 |
| ---------------- | --------------------------------- |
| HTML,CSS,LESS | emm...没什么好说的 |
| Vue.js2.6 | 项目的前台是完全基于Vue进行搭建的 |
| Npm | 前端安装包工具 |
| Webpack | 前端模块打包工具 |
| Vue-cli | Vue的脚手架,用于构建基本项目架构 |
| Vue-router | Vue的路由工具 |
| Vuex | Vue的状态管理模式,集中式存储管理 |
| Element-ui | Vue的一些基本组件库 |
| axios | ajax的框架,用于异步请求 |
| v-charts | 构建统计视图 |
| vue-quill-editor | 基于Vue的富文本框架 |
| vue-particles | 粒子特效 |
<br/>
### 后台
| | 介绍 |
| ------------------- | ------------------------------------------------------------ |
| SpringBoot | 该项目每个微服务内部都是使用SpringBoot进行搭建的,emmm,直接牛逼 |
| SpringCloud | 该项目是由好几个微服务组成的,微服务之间的注册和调用等是通过SpringCloud来完成的。使用到了Eureka,Zuul,Ribbon,Feign |
| MybatisPlus | 该项目使用MybatisPlus来完成对mysql的持久层操作 |
| SpringData | 该项目虽然没有使用JPA来完成对mysql的操作,但是其他数据库(MongoDB,redis,ElasticSearch)都是使用SpringData来操作的 |
| JWT | 该项目用jwt实现单点登录,对用户的请求进行认证。采用的是无状态登录 |
| Rsa | 一个非对称机密算法,将token的载荷和秘钥进行加密放入签名域 |
| FastDFS | 一个轻量级的分布式文件系统,用于项目上传图片等文件 |
| RabbitMQ | 该技术是基于AMQP协议的消息代理软件,通过该技术实现了手机,验证码的发送以及数据库之间数据的同步 |
| Mysql | 该项目用Mysql来存储主要的数据(用户信息,学科信息,发布的试卷信息,用户订阅的考试信息,用户的考试亲狂) |
| MD5 | 一个不可逆加密算法,该项目用md5来实现对用户密码的加密 |
| Druid | 该项目使用Druid来作为mysql的数据源 |
| MongoDB | 该项目用MongoDB来存储关于试卷的数据(试题信息,试卷信息)以及日志信息 |
| ElasticSearch | 该项目用ElasticSearch来存储用于搜索的用户数据,并实现搜索和聚合等功能 |
| Redis | 该项目用Redis来做部分数据的缓存,并且用redis来存储手机和邮箱的验证码信息 |
| Nginx | 该项目用Nginx来实现反向代理 |
| Quartz | 定时任务框架,该项目用Quartz来实现某些操作的定 |
| Swagger2 | 该项目用swagger2实现对RESTful风格的api进行统一描述和可视化调用 |
| Lombok | 该项目使用Lombok来简化实体类和日志 |
| Logback | 该项目使用logback来实现日志的输出和持久化 |
| Hibernate-validator | 该项目使用hibernate-validator来进行部分实体类的数据校验 |
| Docker | 该项目使用的服务器是用docker进行统一管理的 |
| 阿里云短信服务服务 | 该项目使用的短信服务是由阿里云提供的 |
| Git | 该项目用git来进行版本管理 |
> 其实,我这个项目不应该使用JWT完成单点登录的,最好是==使用SpringSecurity和OAuth2==来完成权限和登录的控制,一开始对项目的整体预估不足,贪图简单,就直接使用了JWT+Rsa来写了,写到后来权限控制那块很难控制了,无奈呀~。没办法,都成型了,也懒得重构了,这个项目就这样吧。下次注意!
![](C:\Users\MyPC\AppData\Roaming\Typora\typora-user-images\image-20200719095908918.png)
<br/>
<br/>
## 项目目录框架
### 前台
![](C:\Users\MyPC\AppData\Roaming\Typora\typora-user-images\image-20200719095927780.png)
<br/>
### 后台
![](C:\Users\MyPC\AppData\Roaming\Typora\typora-user-images\image-20200719095942531.png)
<br/>
#
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
在线考试系统是一种基于互联网的教育技术工具,用于组织、管理和实施在线考试。这种系统通常由软件应用程序支持,为学生和考生提供了在网上参加考试的机会。在线考试系统可以用于各种教育和培训场景,包括学校教育、职业资格认证、招聘考试等。 【主要特点和优势】: 灵活性和便利性:学生和考生可以通过互联网随时随地参加考试,不再受限于特定的地点和时间。 自动化管理:系统能够自动管理考试安排、考生信息、考试成绩等数据。 安全性:在线考试系统通常具有严格的身份验证和防作弊措施。 实时反馈:考试结束后,系统可以立即生成和发布成绩,提供即时反馈。 多样化的题型:系统支持各种题型,包括选择题、填空题、问答题等多种题型。 数据分析:系统可以收集和分析大量的考试数据,帮助教育机构和考试机构更好地了解学生的表现和需求,优化教学和考试内容。 【引流】 Java、Python、Node.js、Spring Boot、Django、Express、MySQL、PostgreSQL、MongoDB、React、Angular、Vue、Bootstrap、Material-UI、Redis、Docker、Kubernetes
资源推荐
资源详情
资源评论
收起资源包目录
在线考试系统前台系统manager_protal.zip (117个子文件)
.browserslistrc 30B
iconfont.css 12KB
demo.css 8KB
base.css 1KB
element.css 184B
iconfont.eot 6KB
g6.gif 1.28MB
g7.gif 530KB
.gitignore 214B
demo_index.html 17KB
index.html 1KB
favicon.ico 77KB
favicon2.ico 4KB
35.jpg 4.1MB
星空.jpg 4.01MB
30.jpg 1.7MB
search.jpg 1.69MB
32.jpg 1.64MB
userinfo.jpg 47KB
下载.jpg 5KB
head.jpg 4KB
iconfont.js 24KB
utils.js 19KB
index.js 6KB
userInfoHttp.js 3KB
index.js 2KB
element.js 2KB
vue.config.js 2KB
subscribeExamHttp.js 1KB
subjectHttp.js 1KB
testHttp.js 1KB
TopicHttp.js 1KB
main.js 818B
examDataHttp.js 632B
examieeHttp.js 622B
loginHttp.js 601B
http.js 563B
publicTest.js 538B
ExamAnswerHttp.js 496B
authCodeHttp.js 461B
topicAnswerSituationHttp.js 281B
examResultHttp.js 275B
logHttp.js 270B
userSearch.js 257B
VerifyHttp.js 216B
babel.config.js 73B
package-lock.json 429KB
iconfont.json 2KB
package.json 871B
README.md 23KB
search.png 4.36MB
34.png 3.84MB
topic.png 2.28MB
topicDialog.png 1.44MB
walk.png 610KB
xiaomai.png 404KB
limulu.png 31KB
tuanzi2.png 28KB
tuanzi1.png 17KB
manualType.properties 10B
iconfont.svg 23KB
eye.svg 3KB
iconfont.ttf 6KB
系统.txt 34B
HeaderDialog.vue 33KB
EditTest.vue 30KB
CreateTest.vue 28KB
ExamSubscribe.vue 23KB
Topic.vue 21KB
ExamineeManage.vue 20KB
TestManager.vue 18KB
ExamCenter.vue 18KB
TopicDialog.vue 17KB
ExamManage.vue 16KB
UserScore.vue 16KB
TopicManage.vue 16KB
TopicAnswerManage.vue 15KB
ExamPreview.vue 14KB
ExamPage.vue 14KB
UserInfoShow.vue 13KB
UserScoreStatistic.vue 11KB
AllUserScoreStatistic.vue 11KB
SubjectManage.vue 9KB
PreviewTest.vue 9KB
UserManager.vue 9KB
UserDetailInfo.vue 8KB
LoginEmail.vue 6KB
Register.vue 6KB
LoginMessage.vue 6KB
LogInfo.vue 6KB
Subject.vue 6KB
UserStatistic.vue 5KB
HeapMapChina.vue 5KB
AsideMenu.vue 4KB
LoginPassword.vue 4KB
DateTime.vue 4KB
HistogramChart.vue 4KB
ScatterChart.vue 3KB
LineChart.vue 3KB
HomeSearch.vue 3KB
共 117 条
- 1
- 2
资源评论
枫蜜柚子茶
- 粉丝: 6345
- 资源: 4732
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功