springboot基于Java的在线考试系统设计与实现

摘 要

时代在飞速进步,每个行业都在努力发展现在先进技术,通过这些先进的技术来提高自己的水平和优势,在线考试系统当然不能排除在外。在线考试系统是在实际应用和软件工程的开发原理之上,运用java语言,JSP技术以及SpringBoot框架进行开发。首先要进行需求分析,分析出在线考试系统的主要功能,然后设计了系统结构。整体设计包括系统的功能、系统总体结构、系统数据结构和对系统安全性进行设计;最后要对系统进行测试,还要对测试的结果进行总结和分析,为以后系统的维护提供方便,也为以后类似系统的开发提供参考和帮助。这种个性化的网络系统管理更重视相互协调和管理合作,能激发管理者的创造性和主动性,这对在线考试系统来说非常有益。
关键词:在线考试系统,java语言,SpringBoot框架,

第1章 绪 论

随着社会的快速发展,计算机的影响是全面而深刻的。当前疫情已席卷全球,人们深感不安。在生活中,大家也不断提高了对系统的要求,在线考试的信息数量也在与日俱增,这使在线考试系统的问世成为了一件十分紧迫的事情[1]。
1.1 课题的研究背景
在线考试系统主要通过计算机网络,对在线考试系统的信息进行统一管理,方便管理员随时随地进行增添、修改、查询、删除各类信息,也方便学生查询课程信息、学习交流、在线考试等。本系统极大的促进了系统与数据库管理系统软件之间的配合,满足了绝大部分用户的需求,给用户带来了很大的便利。以现在计算机的技术的应用,使计算机成为人们使用现代发达技术的桥梁。计算机可以有效的解决信息,十分方便的获取信息,从而提高工作的效率[2]。
1.2 课题研究目的
全球经济在快速的发展,中国更是进步飞速,这使得国内的互联网技术进入了发展的高峰时期,这让中外资本不断转向互联网这个大市场。在这个信息高度发达的现在,利用网络进行信息管理改革已经成为了人们追捧的一种趋势。“在线考试系统”是运用java语言和SpringBoot框架,以Mysql数据库为基础而发出来的。为保证我国经济的持续性发展,必须要让互联网信息时代在我国日益壮大,蓬勃发展。伴随着信息社会的飞速发展,在线考试所面临的问题也一个接一个的出现,所以现在最该解决的问题就是信息的实时查询和访问需求的问题,以及如何利用快捷便利的方式让访问者在广大信息系统中进行查询、分享、储存和管理。这对我们的现实生活中具有非常重要的意义,所以在线考试系统诞生了[3]。
1.3 课题的研究意义
现在还有许多人用纸质工具存储并管理信息,网络仅仅起到一般的辅助性作用。以我对人们常用软件的了解程度,大家仍然把传统的Office软件当成主要工具,在线考试系统相比Office软件来说会更全面更专业。本系统通过标签分类等方式,使管理人员对各项功能信息实现高效的管理,可以极大的提高管理人员的工作效率[4]。
1.4 研究现状
在国外线上管理发展较早。相对应的软件的开发设计和保护也有所增加。由于长時间的技术积累,产品研发工作更是持续推动,最终获得了较大的发展。如今,向着智能化,数字化和信息化的方位快速发展。各行各业都使用了相似的规章制度,推动发展,获得了较好的经济效益[5]。
在国内,因起步较晚,目前的管理还不够完善,发展不平衡,对在线考试的管理过程中应用电子计算机和网上的领域以及外部状况信息存有很大差别。技术性简易地取代了过去的形式或方式,但根据更科学的方式再次设计方案管理的这一环节中,大家必须舍弃传统的管理方式,尽早更改管理方法,变化管理理念合理操纵,使系统更细腻,控制成本、提升管理效益。
计算机作为信息科学的媒介和关键,它的出现和发展对人类社会的繁荣起着至关重要的作用。无论是政府机构还是公共机构,都会根据工作内容选择一套优秀的通信技术和专业的办公设备,利用这些技术和设备快速收集、解决和存储信息,使管理工作变得方便快捷,达到科学合理的管理目标。
总之,在线考试系统的发展呈不断上升的发展趋势,现在传统的手工制作和半手工管理的方法进入到信息化管理的转变过程中,必须使用和融合新的信息技术来完成传统的系统设计方法,才能保证系统的效果和质量[6]。

第2章 相关技术

本在线考试系统的数据库采用的是Mysql数据库,并且选择了java语言和JSP技术、SpringBoot框架进行开发项目,在项目开发过程中,实现了系统功能模块的安全性、实用性、稳定性、易维护和页面简单等特点。

2.1 Java编程语言
Java 最大的两个特点就是功能强大和简单易用。Java可以让程序员进行复杂的编程而不必为储存管理对象等问题所烦恼,把精力和时间更多的放在研发与设计上,极大地提高了开发者的工作效率和工作热情。
2.2 SpringBoot框架介绍
现如今后台开源框架主流的有SSH、SpringBoot、SpringBoot,但是SSH、SpringBoot框架的环境配置项较多,而SpringBoot主要的设计思想就是约定大于配置,故而SpingBoot在设计时几乎达到零配置。SpringBoot整合了业界上的开源框架。具体采用技术框架描述如下:
(1)Mybatis:Mybatis:提供自动映射,动态SQL,级联,缓存,注解,代码和SQL分离等特性,使用方便,同时也对SQL进行优化。
(2)SpringMVC:通过一套MVC注解,让POJO成为处理请求的控制器,无需实现任何接口,同时,SpringMVC还支持REST风格的URL请求。
(3)SpringBoot:从本质上来说,Spring Boot就是Spring,它做了那些没有它你也会去做的Spring Bean配置。
SpringBoot是一款非常强大后台框架,因为SpringBoot开发时可以基本不用写配置文件,所以使用SpringBoot搭建网站的后台环境,在SpringBoot的yml配置文件中写入项目启动端口,项目就可以启动。项目的Java文件还有静态文件都是由SpringBoot来管理。

2.3 MySQL数据库
MySQL是一种用于数据存储的关系数据库管理系统,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。由于计算机是一个巨大的数据处理工具,所以数据库管理系统在计算机中占有重要地位。数据的管理不仅仅只是数据的存储,而是已经转变成用户需要的许多的数据的管理。其也有很多不同的类型,能够做到有简单的数据管理到大量的数据的管理能力。
这种数据库是比较灵活的方式,优势就在于更加的切合开发者的思考逻辑,所以理解起来也会比较的方便,还能够和其他的语言一起使用,在连接起来就是比较的易懂,同时对于一些基本的查询以及添加的操作也是必须能够掌握的功能。

2.4 本章小结
本章节对项目在线考试系统进行了相关技术的分析与介绍,在结合技术的优点和适应性来选择数据库、服务器和开发环境,基于现有的情况,针对系统的各个模块确定系统的最优设计方案。

第3章 系统分析

为满足用户的需求,本章分析系统开发的可行性,将从技术和操作等方面来判断,然后通过需求分析、系统流程分析来确定在线考试系统的功能[7]。
3.1 技术可行性分析
在线考试系统在使用电脑和信息分析系统这些设计没有硬性要求,电脑只要是可以正常使用的话,那么代码和页面设计就是可行的。要求高的主要是服务器,平台上传服务器一定要选择性价比高和安全性高的,打开网站一定要顺滑不卡顿,所以硬件也是可行的[8]。
3.2 操作可行性分析
将根据管理系统中的用户体验和管理员的效率来分析该措施的可行性。管理人员和学生和教师都可以通过简单的操作登录进对应的系统页面,方便用户搜索业务信息和管理人员管理数据,不需要特别懂电脑的人也可以轻松访问系统模块。该系统已完全投入使用[9]。
所以,从以上可行性分析可得,本系统的开发使没有问题的。
3.3 需求分析
本在线考试系统是为了提高用户查阅信息的效率和管理人员管理信息的工作效率,可以快速存储大量数据,还有信息检索功能,这大大的满足了学生、教师和管理员这三者的需求。操作简单易懂,合理分析各个模块的功能,尽可能优化界面,让学生、教师和管理员能使用环境更好的系统[10]。
对比要实现的功能来分析出用户的需求,可以让用户权限内在线对其进行添加、修改、查看、删除,这不仅满足了用户的需求,还大大的节省了时间。因此,管理员的需求也应当考虑一下,尽可能提高管理员的工作效率。
3.4 项目设计目标
本系统采用Mysql数据库和java语言,SpringBoot框架进行开发而成,极大程度上的保证了系统的稳定性。
3.4.1 关于系统的基本要求
(1)功能要求:管理人员可以管理自己的个人中心、对学生、教师、 班级、课程类别、课程信息、学习交流等进行管理。
(2)性能:可以准确无误的在不同的操作系统中登录到学生、教师或者管理员的相应界面进行轻松的操作。
(3)环境要求:支持不同的操纵系统和不同的平台,可用于Windows系列、Vista系统等多种操作系统[11]。
3.4.2开发目标
本在线考试系统的主要开发目标如下:
(1)减少后台管理人员的工作量,对用户的信息进行系统的管理;
(2)必须要方便快捷的查看搜索信息并管理信息;
(3)用户是具有多样性的,所以界面要设置的简单明了,操作更要方便快捷。
3.5系统用例图
本次系统的用例图做出了十分明确的功能划分,在设计时可以有很好的设计思路进行设计和延展。
(1)管理员用例图如下所示:
在这里插入图片描述

图3-1管理员用例图

(2)学生用例图如下所示:
在这里插入图片描述

图3-2学生用例图
(3)教师用例图如下所示:
在这里插入图片描述

图3-3教师用例图

3.6 系统流程分析
系统登录流程图如图所示3-4所示。
在这里插入图片描述

图3-4系统登录流程图
用户可以添加自己权限内的信息,管理员可以添加信息,内容没有问题之后按下确定键就添加成功了。添加信息流程图如图3-5所示.
在这里插入图片描述

图3-5 添加信息流程图
用户可以选择把自己发布的信息删掉,选择要删除的文章确认之后,删除信息的操作就完成了。删除信息流程图如图3-6所示。
在这里插入图片描述

图3-6删除信息流程图

3.7 本章小结
本章主要是对在线考试系统的可行性分析和所要实现的功能进行分析,在对一系列的系统可行性分析之后,又详细的讲述了项目的目标与原则,让人们深刻的了解在线考试系统的设计思想,之后重点对登录模块、添加模块和删除模块的流程进行了详细的图文介绍。

第4章 系统设计

本章主要讲述的是在线考试系统的设计开发结构,简单介绍了开发流程与数据库设计的原则以及数据表的关系结构图,并且详细的展示了数据表的内部结构信息与属性。
4.1 系统体系结构
系统启动后,在登录界面,输入正确的账号、密码、角色,选择进入管理员界面或学生、教师界面,管理员界面是用来管理页面与系统的所有功能,教师自己权限内功能操作,学生界面可以正常的使用,并对课程信息、学习交流等进行份内的操作,系统登录结构图如图4-1所示。
在这里插入图片描述

图4-1 系统登录结构图
管理员模块属于是网站的后台,进入之后有大量的管理员功能,管理员也可以使用学生、教师模块的功能,为了维护网站的稳定与页面的布局,将管理员模块的功能详细化后可以使用系统管理对页面进行布局修改,可以发布公告提示用户规范,学生模块只可以对课程信息、学习交流、在线考试等进行查询等,并且更改个人信息,在线考试系统总体结构图如图4-2所示。
在这里插入图片描述

图4-2 在线考试系统总体结构图
4.2 开发流程设计
系统的开发流程设计简单的介绍了开发过程,先对任务书进行分析,根据要实现的功能对各个模块进行开发,之后再对模块一一进行测试,测试成功后将模块整合再测试整体功能,完善整体结构。开发系统流程图如图4-3所示。
在这里插入图片描述

图4-3开发系统流程图

4.5 本章小结
本章具体讲述了系统的大体结构,主要包括学生、教师和管理员三大系统模块,使其各个功能简洁明了。同时对数据库的设计原则进行分析,从而提高了系统的效率。

第5章 系统实现

本章讲述的是系统对各个模块功能实现的效果图,对管理员功能和学生、教师功能分别进行了展示,页面布局清晰,操作简单快捷,基本实现了对学生、教师和管理员对系统的需求。
5.1前台系统功能实现
当游客打开系统的网址后,首先看到的就是首页界面。在这里,游客能够看到在线考试系统的导航条显示首页、课程信息、学习交流、在线考试、校园公告、后台管理、个人中心等。系统首页界面如图5-1所示:
在这里插入图片描述

图5-1 系统首页界面

这是一个学生注册的界面,当学生没有账户时可以通过注册来登录系统,只需要根据相应的提示,输入学号、密码、学生姓名、头像、性别、班级名称、教师工号、联系方式等信息即可。学生注册界面如图5-2所示:
在这里插入图片描述

图5-2 学生注册界面

这是学生登录界面,学生在登录页面填写账号或者密码,点击登录,如图5-3所示:
在这里插入图片描述

图5-3学生登录页面

学生点击课程信息页面的搜索栏输入课程名称、课程简介、教师姓名进行查询,然后可以查看课程编号、课程名称、封面图片、课程类别、课程简介、教学视频、上传时间、教师工号、教师姓名、点击次数等信息,如果有需要可以点击点赞、收藏或者评论等操作,如图5-4所示:
在这里插入图片描述

图5-4课程信息页面

学生通过学习交流填写标题、类型、内容,进行发布帖子,与其他学生可以在下方发表评论,可依关键字搜索帖子,如图5-5所示:
在这里插入图片描述

图5-5学习交流页面

在个人中心页面可以更新个人详细信息,还可以对我的发布、考试记录、错题本、我的收藏进行详细操作;如图5-6所示:
在这里插入图片描述

图5-6个人中心界面

5.2后台管理员功能实现
后台管理员登录,在登录页面选择需要登录的角色,在正确输入用户名和密码后,点击登录操作;如图5-7所示。
在这里插入图片描述

图5-7 后台管理员登录界面

管理员进入系统主页面,主要功能包括对系统首页、个人中心、学生管理、教师管理、 班级管理、课程类别管理、课程信息管理、学习交流、在线考试管理、试题内容管理、系统管理、考试管理等进行操作。管理员主页面如图5-8所示:

图5-8 管理员主界面
在这里插入图片描述

管理员点击班级管理:在班级管理页面,可以对班级等信息,进行查询或者添加、删除班级信息等操作,如图5-9所示:
图5-9班级管理界面
在这里插入图片描述

管理员点击教师管理:在教师管理页面,可以对教师工号、教师姓名、头像、性别、职称、班级名称、联系电话等信息,进行查询或者添加、删除教师信息等操作,如图5-10所示:
图5-10教师管理界面
在这里插入图片描述

管理员点击课程类别管理:在课程类别管理页面,可以对课程类别等信息,进行查询或者删除课程类别等操作,如图5-11所示:
图5-11课程类别管理界面
在这里插入图片描述

管理员点击课程信息管理:在课程信息管理页面,可以对课程编号、课程名称、封面图片、课程类别、课程简介、教学视频、上传时间、教师工号、教师姓名、点击次数等信息,进行查询或者删除课程信息等操作,如图5-12所示:
图5-12课程信息管理界面
在这里插入图片描述

5.3后台学生功能实现
学生点击后台管理,然后页面跳转到系统主页面,主要功能包括对系统首页、个人中心、我的收藏管理等进行操作。学生主页面如图5-13所示:

在这里插入图片描述

图5-13 学生主界面

5.4后台教师功能实现
后台教师登录,在登录页面选择需要登录的角色,在正确输入用户名和密码后,点击登录操作;如图5-14所示。
在这里插入图片描述

图5-14 后台教师登录界面

教师登录到系统主页面,主要功能包括对系统首页、个人中心、课程信息管理、在线考试管理、试题内容管理、系统管理、考试管理等进行操作。教师主页面如图5-15所示:
在这里插入图片描述

图5-15教师主界面

5.5 本章小结
本章讲述了在线考试系统的实现,并把学生、教师和管理员三大功能模块用图片的形式展示出来并解读了其中的功能。设计的页面简洁,布局清晰,操作十分快捷,极大程度的节约了操作时间。

第6章 系统测试

系统测试是系统开发的最后一部也是最重要的一步,能看出其作用在系统开发中占据了很重要的地位。本章将通过系统测试来发现在线考试系统中出现的各种问题并立刻做出改正,以确保系统中的功能模块能够准确实现[12]。
6.1 系统测试的目的
任何人系统开发中也不能保证没有一点错误,在开发的过程中错误是不可避免的,所以在发现错误时要及时改正,不能让错误一直存在,否则会引发系统崩溃等不可小觑的后果,所以才需要系统测试来在一定程度上避免这些问题的发生。在测试中发现错误并及时改正才会让系统长久稳定的运行,虽然这是耗时耗力的,但为了系统能够长期使用,系统测试这一步骤也是十分重要的。
为实现系统中各个模块的功能,系统测试是必须的,这样才能判定系统是否能准确的实现预想的功能。在正式使用系统前必要的步骤就是针对系统进行测试,确保系统的准确性,以供使用[13]。
6.2 系统测试方法
在测试中发现问题一定要立马寻找解决办法,不要妄图通过偶然的概率对错误不管不问,只有认真测试解决问题,才能保证在线考试系统的质量,可以极大的缩短开发的时间。
测试时不要一错再错,同样的错误一起解决,这样才能提高系统的稳定性和安全性[14]。
6.3 功能测试
下面对登录模进行测试,表格里分别是输入用户名和密码后的三种不同的结果,当用户名错误时会提示用户名错误,当密码错误时会提示密码错误,当账户与密码都正确时会提示登录成功,如果以用户的账户密码登录管理员模块会提示登录失败。登录模块测试如表6-1所示[15]。
表6-1 登录测试

通过删除一则最新通知,来判断此功能是否通过测试,当选择删除这个模块时,会提示是否确认删除,确认后会提示删除成功,页面自动跳转。删除模块测试如表6-2所示。
表6-2 删除模块测试

通过输入错误的原密码、不一致的新密码和正确的密码来测试修改密码的功能是否通过测试。修改密码模块测试如表6-3所示。
表6-3 修改密码测试

通过上述功能测试,结合测试结果可以看出,该项目的基本功能是可以实现的,系统中的功能很全面并且界面设计简洁清晰,最终通过了系统测试。
6.4 本章小结
本章主要论述的是在线考试系统的测试,讲述了系统测试的目的和方法,通过对各个重要功能的测试,发现系统中可能存在的技术性问题并加以改正。最终测试操作完成了在线考试系统的实现。

结 论

本系统是采用java语言,SpringBoot框架构建的一个操作管理系统,选择的数据库是Mysql。整个过程先是通过整体的系统分析,来确定本系统的可行性是否达标。为了满足用户的需求以及提高管理员的工作效率,通过系统所要实现的功能分析,决定了学生、教师和管理员要实现的功能。之后就是精细各个模块的具体功能,定义学生和教师、管理员的权限,分割成管理员功能模块和学生、教师功能模块。之后通过系统测试来确保数据的准确性和操作的准确性,发现错误并立即做出了改正。
系统本身就是共享信息的存在,学生、教师权限内和管理员都可以发布信息来分享资源,通过加入关键词检索,让学生、教师和管理员更方便的使用系统。同时通过分类以便用户查找信息可以进一步的对号入座,极大的节省了查找信息的时间。通过加入信息的评论功能,加深了用户与用户之间的交流,使其构造出更良好的网络环境。
在本次项目设计中,完成了大大小小的模块,系统设计的调查,数据的分析,在安装软件方面,选择版本问题困扰了我很久,后来找相关的网站介绍,了解了各个版本的利与弊,最后完善了本次设计。在线考试的系统设计选择了java开发工具,和Mysql数据库对前后台的数据交互进行分析保存,使用Mysql数据库可以是程序运行更加的安全且稳定,从而实现并完善系统的开发。

一、项目简介本课程演示的是一套基于SSM实现在线考试系统,主要针对计算机相关专业的正在做毕设的学生需要项目实战练习的Java学习者。课程包含:1. 项目源码、项目文档、数据库脚本、软件工具等所有资料2. 带你从零开始部署运行本套系统3. 该项目附带的源码资料可作为毕设使用4. 提供技术答疑二、技术实现后台框架:SpringSpringMVC、MyBatisUI界面:JSP、jQuery 、BootStrap数据库:MySQL 三、系统功能该在线考试系统基于B/S架构,采用SSM框架,运用JSP网页开发技术,并结合MySQL数据库,搭建一个高效、便捷的网络考试平台。 ​本系统分为前台考试模块和后台管理模块,包含学生、教师和管理员共三个角色,功能如下: 1.前台考试模块 学生注册、学生登陆、考试中心、参加考试、查看考试成绩、查看历史考卷、查看个人信息等功能。 2.后台管理模块 系统后台登陆、学生管理、教师管理、班级管理、年级管理、科目管理、试题管理、添加试题、导入试题、试卷管理、生成试卷、考试安排管理、添加考试计划、查看以往考试信息、考试成绩统计等功能。 教师主要完成试卷管理、试题管理、考试计划管理等一些考试相关的操作;管理员具有最高权限,可以管理学生、老师、试题、题库、考试等信息,同时也可以老师一样进行考试相关的操作。 该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值。 四、项目截图1)前台首面 2)历史试卷回顾 3)系统后台管理 4)试卷管理 5)试题管理  更多Java毕设项目请关注【毕设系列课程】https://edu.csdn.net/lecturer/2104   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值