作品描述

系统系基于 B/S 框架架构,采用SpringBoot和Vue.js实现系统。在此架构下进行系统开发,功能测试和调试Bug都十分方便。客户端只需安装Google Chrome等浏览器,服务端使用MySQL等数据库,通过DOM事件和后端程序实现向数据库中数据的交互。使用ElementUI创建出学生端和管理端的页面并绑定事件,后端使用SpringBoot整合Javaweb开发接口,SpringSercurity做权限管理,最后采用Nginx实现前后端分离系统的部署。这使后端不再需要处理静态资源,减少了请求压力。
视图层使用Vue.js前端框架,绑定接口返回的数据集实现页面的渲染,逻辑层使用SpringBoot框架结合具体业务封装成api接口向视图层提供,数据层使用MybatisPlu实现DAO层向数据库的访问。系统架构如图4-1。

实现效果

e5c016e9454e1ebe08bffaa4f6bcd5.png)



资源下载

免费下载

**源码需要讲解和部署和定制开发的请私信我就行,主页有联系方式。**

论文

第1章 绪论

1.1 系统开发目的
近年来,组卷应用程序的复杂性越来越高。普通应用程序逐渐达不到当前用户的需求水平。因为在普通的Web框架中,当用户刷新系统界面时,系统会自动丢弃旧的界面数据,获取新的页面信息。这种看起来很简单的动作实际上会增加数据在浏览器与数据服务器间的传输压力,从而造成系统反应迟缓[1]。在线考试具有无可比拟的优越性。它极大减少了教师出题,学生做题,手工批改等环节的工作量,开发一套智能化的试题自动生成系统,可以为考生提供一个便捷的考试环境,并使教师能够更好地完成组卷工作,从而减轻教师的工作压力。
1.2 系统开发意义
在计算机相关技术快速发展的环境下,设计一个高效、性能良好的在线智能试卷生成系统,实现各种考试向无纸化甚至自动化的转变,具有重大的实用价值和意义[2]。教学成果的检测常常依赖于考试,试卷作为教育检测中的有效工具。教考老师一般通过多年的教育工作经验,综合考虑多个知识点,结合教学进度,并参照往届考题,才可以出一份可靠的试卷。命题试卷、集体阅卷、考试安排等又会消耗大量的人力财力,本系统的研究打破了传统考试的弊端,简化考试步骤,提高了组卷工作的效率,有利于实现试卷库的数字化管理[3]。
1.3 国内外研究状况
国外在线考试系统在智能化和数据挖掘方面暂时领先于中国。美国由笔试向网络考试过渡的著名案例是ETS GRE(美国研究生入学考试),系统主要由C语言等编写[4]。英国也促进了远程在线考试的快速发展。最初是在公共部门进行,后来扩展到英国的大型公司,随后欧盟也广泛应用网上考试系统。现在,国际上通用的认证考试大都是 UVE认证中心提供的,主要目的是提供高质量的证书,如 CCSP、 CCIE等。
我国在线考试起步较晚,但发展迅速。上世纪九十年代初期,我国多项考试开始采用计算机进行测验[5]。2000年左右,北京大学、清华大学等高校开始尝试基于局域网的C / S模式在线考试。2000年以后,我国以B / S、C / S为主要结构发展网上教育和在线考试系统。近年来,主要的在线考试系统有“新东方”、“猿题库”、“学习通”等,主要以c#、Java、javascript等语言开发。

第2章 关键技术介绍

2.1 Vue.js技术
Vue.js框架由尤雨溪开发创建,是前端主流的Js框架。Vue主要包括视图层、模型层和视图-模型层。视图层负责显示页面;视图模型层对 DOM事件做出响应,并将模型层返回的数据绑定到视图中;模型层的任务是对交互的请求进行处理[6]。Vue.js相对于其它当前主流的前端框架有如下优势。
语法简单易懂,学习成本低,使用简单。
不用脏检查,运行时性能优越。
数据双向绑定,视图层数据与模型层数据同步变化。
传统前端将页面与业务逻辑进行紧密耦合,使DOM代码维护起来很难,MVVM模式实现了Js逻辑代码和HTML代码的充分解耦。数据的双向自动绑定,使开发更多关注于业务处理,提高了效率。具体模型如图2-1所示。

图2-1 Vue渲染过程
2.2 SpringBoot框架简介
Spring[7]是国内常用的开发框架。然而,随着项目业务的深入和系统功能的复杂性,Spring带来了很多复杂的配置工作。在上述环境下,SpringBoot继承了Spring一贯的优点和特性,基于“习惯优于配置”原则,内置一个“习惯性”的配置,开发者无须手动进行配置,项目可以快速运行起来使用。SpringBoot更容易创建一个独立运行的项目、准生产级别的基Spring 框架的项目,使用 Spring BootSpring 简化配置。SpringBoot有如下优点。
提供启动程序,避免了依赖版本冲突。
需要单独的Web服务器,即不再需要启动Tomcat或其他任何中间件。
提供常见的非功能性特征,如日志、系统运行状态等。
和与云计算、微服务的天然集成。
2.3 B/S结构框架
B / S结构[8](Browser / Server)的优势非常明显。B / S结构的系统使用WEB浏览器作为系统客户端,能有效减少维护系统的工作量。用户可以使用谷歌等浏览器,不需要下载其它的客户端软件,则可以直接使用系统。C/S模式的不足之处是,当许多用户同时浏览时,系统可能会瘫痪或者卡顿,进而系统崩溃的可能性很高。B / S系统的架构如图2-2。

图2-2 B/S系统架构
2.4 MySQL数据库
MySQL数据库[9]可靠,快速且稳定,足以满足数据存储业务的需求。因其性能的优越性,和操作的便捷性,已经成为中小企业广泛使用的数据库软件。MySQL数据库有一下特点。
存储容量大,可满足大多数常规要求。
具有成熟的管理数据库功能。
数据库安全机制是完整的。
MySQL通过将缓存数据临时存储到硬盘,大大减少了IO开销所占的时间。在线事务处理功能通过数据库组件连接到内存,这使得MySQL比其他数据库更有处理能力。在查询功能上,MySQL5.7的准确性和速度都有了很大的提高。特别是修改了列表存储索引的查找函数,以确保在数据库中进行更准确的数据查找。从上面可以看出,JSON扩展语法处理作为MySQL的一个新功能,其优势在于摆脱了对硬件要求的特殊依赖,JSON数据的可以使用SQL机制。依靠的自身的数据库管理组件,可以处理现有的事务。通过引入列存储索引函数来更新数据表,可以进一步降低硬件成本。
2.5 本章小结
主要介绍了系统所需的相关技术,包括MySQL数据库、SpringBoot后端框架、Webpack前端技术。采用前后端分离框架,以及web浏览器等相关技术和知识,对智能试卷生成系统进行构建。

第3章系统分析

3.1系统可行性分析
可行性分析是整个项目研发的主导工作。没有这项的工作,会造成两个方面的后果:第一,技术可能不足以支持目标系统,会浪费初期开发的资源和时间。第二,没有经济可行性分析,后面的开发工作将面临资金使用问题,这将导致后续工作无法开展或没有可行方案作为支持。资金使用不合理的发生,甚至会影响到开发团队的声誉。因此,本文将从经济、操作、技术三个层面进行分析。
3.1.1经济可行性
经济可行性是综合考虑系统的价值,通过计算整个开发过程的成本以及后期维护的成本和项目收益,总收益是否可以覆盖成本,进而决定项目是否开发。智能试卷生成系统研发团队是本人以及毕业指导老师。系统所需的人力物力相对较少,开发周期相对较短。在开发过程中,没有任何资金补贴,但是通过系统的开发,团队编码能力得到提高,对javaweb有了更深的理解。
3.1.2 操作可行性
系统采用B / S架构。B / S框架最大的优点是系统不需要安装指定的客户端就可以使用,降低了对客户端的配置要求。通过浏览器,用户就可以顺畅地使用系统。同时,为了体现追求“界面友好”的设计,试卷系统的用户界面简洁明了,这样做的目的是为了方便用户的操作。
3.1.3 技术可行性
SpringBoot框架和系统开发使用的其它相关技术和开发工具已经发展多年,技术生态和环境相对完善。开发工具为IntelliJ IDEA 2020,可以与其他相关技术插件配置使用,由JetBrains公司开发。数据库使用MySQL5.7,存储容量大,查询性能强。另外,B / S是本系统的主要框架。B / S作为浏览器服务器架构,后续系统升级、维护只需在服务器进行更新。B/S结构相对于 C/S结构来说,可以降低系统安装和维护的工作量。
3.2 系统功能分析
本系统的目标是针对传统组卷过程中存在的问题[10],开发一个整合优质教学资源管理、师生互动强的智能试卷生成系统。网上考试也是一种考试。其核心任务与传统相同。在线考试作为科技发展的产物,比线下考试更灵活、更科学。系统除了考生用户外,还需要管理组卷系统的用户。本系统主要将用户分为两类角色,学生和管理员。
学生用户需要先注册账号,登录验证成功后,首页显示所有类型的试卷,包括固定试卷、时段试卷、任务中心。可在首页或者任务中心选择试卷进行答卷,也可以在智能试卷页面选择试卷难度和试题类型数量生成智能试卷,然后进行答卷。需求如表3-1所示。
第5章 系统的实现
5.1 用户登录模块
由功能分析和系统具体设计可以知,用户需经过验证身份后才可以进入系统,否则会强制跳转到登录页面。为了保障系统安全性,减少工作量,系统设计两种URL为实现不用权限用户的登录。学生,点击右上角的注册,会出现填写账号密码、姓名、年级和确认密码字样,用户输入完以后点击注册即可注册账号进行登录。管理员账号由后台系统直接写入到数据库中,实现后台登录。
首先,输入账号和密码后,前端通过Vue.js和 axios框架,用异步请求与后台接口进行数据交互,其次后台再判断用户是否存在,验证用密码是否正确,正确则可成功登录跳转首页,否则提示密码错误。注册页面主要是通过ElementUI组件实现,如果用户填写不规范,系统会予以提示。在登录模块中,组卷考试系统运用了JWT和Token验证技术为防止违规登录,登录页面如图5-1所示。

图5-1 用户登录页面
5.2 系统前台首页
输入地址进入首系统页,首页显示任务试卷、时段试卷、固定试卷。用户必须登录才可看到此页内容。登录系统时,浏览器加载DOM结束时,首先使用axios发送异步请求从后台获取数据,后台判断接口类型检查用户是否有权限,然后利用DAO层将数据查询出来返回给前端系统,数据经Vue.js渲染到页面上。系统页面使用ElementUI组件搭建,主要由Menu、Card、Item、Header等组成。详细界面界面如图5-2所示。

图5-2 系统前台首页首页
5.3 智能试卷生成
此页面实现智能试卷的生成和显示,用户登录后可以自己选择题型和难度进行试卷的自动合成,加入到试库列表中,进行答卷训练。答卷后可以查看得分和错题记录。点击智能组卷导航栏,填写题目数量和难度系数并提交。系统首先通过Vue.js和 axios 框架发送组卷数据查询请求,加载已经存试卷,其次后台使用DAO层框架根据页面参数筛选试题,组合成试卷的富文本保存在数据库中,最终返回创建结果,页面上提示创建成功。界面如图5-3所示。

图5-3 试卷智能生成页面
5.4 系统管理模块
此模块实现管理员登录后可以管理用户、管理试卷、管理试题等。主页信息可以查看试卷数,题目总数,答卷总数,答题总数,用户活跃度信息,以及题目数量的统计信息。
首先,前台通过javascript触发鼠标DOM事件,发送post/get请求到java后台。Service层系统的完根据实际需求成业务逻辑.。Dao层直接操作数据库。最后将Json数据返回到Controller层,再将结果返回给请求者。系统页面使用ElementUI组件搭建,集成了开源框架ElementUiAdmin。主要由Menu、Card、Item、Header等组件组成。通过路由实现页面跳转,使用axios 发送异步请求从后台获取数据,首页信息如图5-4。

图5-4 后台主页
5.4.1 用户管理
管理员登录系统后,可以编辑用户联系电话、邮箱、账号、密码等信息增加新学生用户或者管理员用户,也可对已存在的用户进行删除。页面如图5-5。

图5-5 用户管理信息页面
5.4.2 试题管理模块
试题管理页面中,管理员可以点击添加填写试题属性新增试题,也可以对现有的试题进行修改和删除操作,并可以根据搜索框进行筛选查询。具体界面信息如图5-6所示。

图5-6 试题管理信息页面
5.4.3 试卷管理模块
试卷管理页面中,管理员可以点击添加填写试卷属性、选择试题、考试时间等信息新增试卷,也可以对现有的试卷进行修改和删除操作,并可以根据搜索框进行筛选查询。具体界面信息如图5-7所示。

图5-7 试卷管理页面
5.4.4 学科管理模块
试卷学科页面中,管理员可以点击添加填写学科属性、学科名称、学科代码等信息新增学科,也可以对现有的学科进行修改和删除操作,并可以根据搜索框进行筛选查询。详细界面信息如图5-8所示。

图5-8 学科管理页面
5.4.5 答卷管理模块
登录admin账号点击答卷管理就会显示答卷管理页面,此功能为管理员功能,可对用户的答卷进行批改,查看具体的答卷时间,答卷分数,提交时间等详细信息,也可以选择学科进行筛选。详细界面信息如图5-9所示。

图5-9 答卷管理信息页面
5.5 本章小结
本章从用户权限入手,分析两种用户需要的功能,以及相对应的权限接口。根据这些功能和权限划分出两个子模块。运用 SpringBoot、Vue.js等相关技术,本着系统安全、可维护性强、以及代码健壮性的理念予以实现。系统先进行子模块设计,最后将所有子模块合成,最终完成了试卷系统的全部设计。

第6章 系统测试
6.1 测试的目的
系统的开发任务结束后,对系统的主要功能进行测试。本文的目的是检测主要功能是否正常,在正常的环境下是否满足主要需求。为了达到测试的目的,本文在测试过程中合理选择用例。通过黑盒测试、使用正反用例检测系统功能是否满足需求。同时,本文还综合运用功能测试等方法对系统进行测试。通过这些测试方法保障开发的系统是稳定的、健壮的,符合预期的。当然,本章的主要目的是通过测试用例及早发现问题,然后解决。
6.2 系统功能测试
6.2.1 登录/注册模块测试
登录系统是所有用户进入系统的必要条件。用户输入正确的用户名和密码后,才进行权限的分配。系统登录/注册功能测试列表如表6-1所示。
表 6-1 登录/注册功能测试
测试用例名 预期结果 真实结果 测试结论
账号或密码为空 提示账号或密码不能为空 登录失败 通过测试
正确的账号和密码 提示登录成功跳转到首页 登录成功 通过测试
重复密码不一致 提示密码两次不一致 注册失败 通过测试
规范填写账号和密码输入 提示注册成功并跳转 注册成功 通过测试
账号和密码有一项不正确 提示用户名和密码规则 注册失败 通过测试
由于篇幅原因,只详细介绍注册“规范填写账号和密码输入”用例,其他用例不在赘述。首先填写用户名“test”、密码“123456@”点击注册,提示注册成功并跳转到系统首页如图6-1。

图6-1 注册成功
6.2.2 学生模块测试
在试卷系统中,学生可以通过导航栏进行功能的切换,点击导航栏可进入对应界面。在考试界面,需先填写每种题型数量,以及试卷难度,提交后会自动生试卷发送到学生端,学生开始答题,在规定时间内填写答案并提交。功能测试列表如表6-2所示。
表 6-2 登录/学生功能测试
测试用例名 预期结果 真实结果 测试结论
智能组卷 试卷列表增加一张试卷 组卷成功 通过测试
填写答卷提提交 显示答题时间,给出客观题分数 提交成功 通过测试
错题本查看 显示错误题目,并给出解析 显示成功 通过测试
试卷中心 分类显示试卷 显示成功 通过测试
点击智能组卷,填写选择题1、多选题1、解答题1、难度1提交并生成试卷如图6-2。

图6-2 组卷成功
点击开始答题进入答题页面,填写答案并提交,如图6-3。

图6-3 答卷成功
点击导航栏进入错题本界面,查看错题解析,如图6-4。

图6-4 错题本
6.2.3 管理员模块测试
系统管理员有权限操作系统中的所有数据,同时充当系统的教师端。设置系统管理员不仅方便系统的运维管理,也给系统的安全提供了保障。其主要功能是对数据实体进行“添加、删除、更改、查询”具体测试用例如表6-3。
表 6-3管理员功能测试
测试用例名 预期结果 真实结果 测试结论
统计 显示系统统计数据 显示成功 通过测试
增加用户 实现用户的增删改查 增加成功 通过测试
增加卷题 实现卷题的增删改查 提交成功 通过测试
管理员登陆后会自动跳转首页显示统计系统信息,如图6-5。

图6-5 统计信息
点击学生列表,然后点击添加,填写学生信息用户名“test2022”、密码“123456@”、出生日期“2000-05-01”、状态等信息并提交,具体页面如图6-7。

图6-7 增加用户
首次点击试卷列表,然后点击添加,选择年级、学科、试卷类型并填写试卷名称和答题时间,最后添加标题选择题目1加入试卷并提交,如图6-8。

图6-8 增加试卷
6.3 本章小结
测试智能试卷生成系统,它是对软件质量的检验。在本章中,通过黑盒测试本系统各模块的一些重要功能,测试系统能否正常满足需求。黑盒结果显示,系统基本满足现有需求,本系统具有较好的可扩展性和稳定性。

【毕业设计】基于SpingBoot+vue 在线考试系统(论文+源码+ppt+视频)相关推荐

  1. java计算机毕业设计政府人才机构在线考试系统2021源码+mysql数据库+系统+lw文档+部署

    java计算机毕业设计政府人才机构在线考试系统2021源码+mysql数据库+系统+lw文档+部署 java计算机毕业设计政府人才机构在线考试系统2021源码+mysql数据库+系统+lw文档+部署 ...

  2. jsp mysql在线考试系统源码_jsp+ssm+mysql实现的学生在线考试系统项目源码附带视频导入运行教程...

    今天给大家演示的是一款由jsp+mysql+ssm框架实现的学生在线考试系统,以前我们也发布过两个考试系统,但比较简单,今天这个考试系统功能比较完善,支持单选.多选.简答题型,试题可以批量导入,导入时 ...

  3. 【毕业设计】基于SSM实现酒店管理系统(论文+源码+ppt+视频)

    技术架构SSM (1)Spring是一个开源的Java/Java EE全功能栈的应用程序框架,以Apache许可证形式发布,也有.NET平台上的移植版本.当需要用到某一对象时不需要程序员在代码中增加一 ...

  4. java毕业设计基于SpingBoot的剧本杀管理系统mybatis+源码+调试部署+系统+数据库+lw

    java毕业设计基于SpingBoot的剧本杀管理系统mybatis+源码+调试部署+系统+数据库+lw java毕业设计基于SpingBoot的剧本杀管理系统mybatis+源码+调试部署+系统+数 ...

  5. 计算机毕业设计基于springboot+vue+elementUI的网吧管理系统(源码+系统+mysql数据库+Lw文档)

    项目介绍 随着我国的经济发展,人们的生活水平也有了一定程度的提高,对网络的要求也越来越高,很多家庭都有了自己的电脑,但是很多时候大家在家里玩电脑的时候找不到那种玩耍的气氛和氛围,这个时候大家就都选择了 ...

  6. java毕业生设计-在线考试系统-计算机源码+系统+mysql+调试部署+lw

    java毕业生设计-在线考试系统-计算机源码+系统+mysql+调试部署+lw java毕业生设计-在线考试系统-计算机源码+系统+mysql+调试部署+lw 本源码技术栈: 项目架构:B/S架构 开 ...

  7. java计算机毕业设计基于springboot+vue+elementUI的旅游网站(源码+数据库+Lw文档)

    项目介绍 旅游管理平台采用B/S模式,促进了旅游管理平台的安全.快捷.高效的发展.传统的管理模式还处于手工处理阶段,管理效率极低,随着用户的不断增多,传统基于手工管理模式已经无法满足当前用户需求,随着 ...

  8. 在线计算机考试系统源代码,在线考试系统 附源码和文档

    [实例简介] 在线考试系统 附源码和文档. 做毕业设计,课程设计或者正在学习相关技术知识的朋友可以下载资源学习.想继续学习相关知识的可以关注我. [实例截图] [核心代码] 在线考试系统4 └── S ...

  9. 两套java在线考试系统【源码分享】

    推荐两套在线考试系统,源码完整,功能详细,适合学习. 源码全开源免费分享 ▶▶1:Springboot+vue在线考试系统源码 在线考试系统是一个前后端分离,后端使用 SpringBoot,前端使用 ...

最新文章

  1. Android开发者指南(18) —— Web Apps Overview
  2. 游戏开发基础:判断碰撞(转摘)
  3. Apache2+PHP5不能加载Zend Optimizer的问题
  4. c语言数据转移,重温C语言(2)之数据
  5. 学习笔记-----fputs与printf
  6. linux中的信号1——信号概述
  7. form表单序列化成json数据 将空值用空字符串代替(form表单中checkBox数据会用逗号隔开拼接成字符串)...
  8. POJ-2456.Aggressivecows.(二分求解最大化最小值)
  9. 为什么有的人开车舍不得开空调?车载空调耗油吗?
  10. 用户奖励体系有哪些反作弊的机制?
  11. 计算机怎么开启tftp服务器,Win7系统如何开启TFTP服务器?开启TFTP服务器方法
  12. Python标准库——turtle库
  13. 微信小程序分享朋友圈 详细教程及注意事项
  14. CRMEB商城直播功能-微信小程序直播
  15. python 录屏_python实现录制全屏和选择区域录屏功能代码
  16. sx html5编辑器,SX HTML5全栈可视编辑器
  17. PS 小技巧让你好用到哭
  18. python — cnn+opencv 识别车牌
  19. Linux应用开发3 字符串处理,字符串与其他数字类型的转换,向应用程序传参
  20. Vue ts 项目实战

热门文章

  1. 高二上册必背古诗文名句
  2. Hackthebox:Silo Walkthrough(not use metasploit)
  3. QQ开机自启动出现:由于找不到perl510.dll,无法继续执行代码。重新安装程序可能会解决此问题。
  4. python mysql导出到excel_python:mysql导出数据到excel工具方法
  5. 无线网密码怎么改服务器停用,无线网怎么修改密码?更改无线网密码的操作步骤...
  6. digitalworld.local: MERCY靶机入侵
  7. 如何像打王者荣耀一样让自己拼了命的去学习
  8. 黑马旅游网_后端总结
  9. JavaScript的对象属性和方法和点击事件
  10. 20162329张旭升 2016-2017-2 《程序设计与数据结构》第八周学习总结