APP下载

基于SSM框架的在线考试系统的开发与设计

2019-09-10赵雪辉王金峰于善彬董普祥张雪玉

现代信息科技 2019年7期

赵雪辉 王金峰 于善彬 董普祥 张雪玉

摘  要:随着网络的不断发展,互联网的普及范围越来越广泛,教育行业更是受到了很大的影响和改变。在线考试管理系统是基于B/S架构模式,使用SSM框架技术,运用MYSQL数据库管理技术,适用于一般类考试的在线考试系统。相较传统考试模式而言,该系统不仅能满足各类考试的一般需求,而且能够极大地提高考试管理的效率。学生用户可以进行作业练习、在线考试、查看成绩等操作;教师用户可以录入试题、组织考试、上传资料;管理员用户可以查看考试数据可视化统计结果。系统后端基于MyBatis、Spring、Spring MVC经典框架组合开发,前端基于当前流行的Bootstrap响应式布局框架,开发的网页能自动适应不同分辨率。本文从数据库设计、业务流程设计、系统功能设计与实现等软件开发的关键阶段阐述了系统的开发过程,为传统教育考试模式的更新提供技术支持。

关键词:在线考试系统;SSM框架技术;Java Web技术

中图分类号:TP311.52      文献标识码:A 文章编号:2096-4706(2019)07-0082-03

Abstract:With the development of the internet,the popularity of the internet is very extensive,and the education industry has been greatly affected and changed. Online examination management system is based on B/S mode,using SSM framework technology,using MYSQL database management technology,suitable for general online examination system. Compared with the traditional examination mode,the system can not only meet the general needs of all kinds of examinations,but also greatly improve the efficiency of examination management. Student users can do homework exercises,online exams and check results;teacher users can input questions,organize exams and upload data;administrator users can view the visual statistical results of test data. The back end of the system is based on the combination of MyBatis,Spring and Spring MVC classical frameworks. The front end is based on the Bootstrap responsive layout framework,which is currently popular. The web pages developed can automatically adapt to different resolutions. This paper describes the development process of the system from the key stages of software development,such as database design,business process design,system function design and implementation,to provide technical support for the updating of the traditional educational examination mode.

Keywords:online examination system;SSM framework technology;Java Web technology

0  引  言

隨着“互联网+教育”的不断普及和深化,提高考试管理效率、提升判卷质量以及加强试卷的管理工作迫在眉睫。传统的考试要经过繁杂的步骤,例如出卷、评阅试卷、成绩统计、试卷分析等,显然已经不能适应现代考试的需要。

在线考试系统延伸了传统考试考场的涵义,利用网络的广阔空间,加上数据库技术的支持,减轻了教师的工作负担,同时提高了考试相关工作的效率。网络在线考试实现了传统考试与现代科技的完美结合,使考试变得更公平公正、更具权威性和可靠性,符合新形势下现代教育体制的要求,代表着现代教育考试的发展方向。

1  SSM框架技术

1.1  Spring框架

Spring是于2003年兴起的一个轻量级的Java开源框架,是为了解决企业应用开发的复杂性而出现的。简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架,不仅用于服务器端的开发,还可用于市场上多重耦合Web应用程序的研发。从简单性、可测试性和松耦合的角度而言,任何Java项目都可从中获益,因此本系统选择基于Java语言的Spring框架作为研发的底层。

1.2  Spring MVC框架

Spring MVC框架是一个开源的Java平台,为开发强大的基于Java语言的Web应用程序提供全面的基础架构支持。SpringMVC框架是以请求为驱动,围绕Servlet设计,将请求发给控制器,然后通过模型对象、分派器来展示请求结果视图。其中DispatcherServlet是请求的核心类,它是前端控制器设计模式的实现,提供Spring Web MVC的集中访问点,负责职责的分派,而且能够与Spring IoC容器无缝集成。因此,本系统采用Spring MVC框架的设计模式灵活地实现将多个视图依赖于多个业务对象,在处理业务数据的对象和显示业务数据的视图之间存在松耦合和可测试性。

1.3  MyBatis框架

MyBatis是一个基于Java的持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索,使用简单的XML或注解用于配置和原始映射,将接口和Java的POJOs映射成数据库中的记录,它让数据库底层操作变得透明。MyBatis通过配置文件关联到各实体类的Mapper文件,Mapper文件中配置了每个类对数据库所需进行的sql语句映射。元素集合之间相互的对应关系映射对于本系统的研究十分重要,因此本系统选用MyBatis框架来实现配置和代码语句映射。

2  系统设计与实现

2.1  系统总体架构设计

该系统项目采用SSM框架构建,分为Controller、Ser-vice、ServiceImpl、Model、DAO和Mapping层。前端使用Jsp技术、Boostrap和Jquery等前端开发的开源工具包,以及Jstl标签库来实现前端自适应页面的构建。

Mapping层采用My Batis持久层框架,通过简单的XML文件将数据库数据关联到各实体类,以及配置映射对应每个实体类所需的数据库操作。业务层采用Spring框架的依赖注入方法和AOP技术事物隔离法在配置文件中指定特定参数来实例化对象,并作为表示层和数据层之间的桥梁,通过接口方式与它们通信。表示层采用Spring MVC框架,Spring MVC通过前端控制器接收处理用户发送过来的web请求,并对其进行解析,通过映射关系选择相应的Controller。系统框架设计图如图1所示。

2.2  系统部分功能的实现

2.2.1  题库管理功能

题库管理功能的实现:该系统显示试题数据列表页时用Laypage分页控件将所有数据取出,为方便用户查看和合理展示数据,在前端Js上对数据进行分页。该系统在管理题库和试题类型时采用Layer弹窗组件,Layer尽可能地在选择管理题库中的试题信息以更少的代码展现易用和实用性,使添加试题和编辑试题每一种弹层模式各具特色。系统在前端页面采用了Ajax、JQuery技术对网页进行渲染,使教师能够更为便捷地对试题进行操作。在添加试题功能模块中,系统运用Java I/O流等技术实现了试题批量导入(支持Excel、Word等格式)和手動录题的功能。此外,系统通过Mybatis持久层框架技术实现了对试题的多功能检索、以Excel文件导出、编辑、删除功能。

2.2.2  试卷管理和发布考试功能

考试功能的实现:考试组卷功能部分运用两种方法,一是教师手动从题库中检索试题生成试卷;二是教师选定试题的类型以及数量,然后系统后台采用自主设计的不重复随机抽题算法生成随机试卷,增加试卷的随机性、客观性。系统还具有试卷概览模块,该模块运用JQuery开源插件实现了试卷编辑、预览、试卷导出、删除等功能,以便于更好地管理试卷。系统根据需求设计了多种考试模式,增强了系统的灵活性。下面是考试功能模块,该模块实现了不同的考试模式,通过采用多种随机分发试卷算法实现了随机试卷、按IP地址分发试卷、相同试卷等多种模式。

2.2.3  在线考试功能

在线考试功能的实现:系统通过检测学生用户登录成功后新建的Session会话,从考试数据表检索出符合条件的考试。考生选择考试科目进入考试页面,系统将开启防作弊功能,具体实现方式包括防刷新处理、限制考生上网、屏蔽电脑USB接口等。完成相应科目考试,系统能够通过后台将数据库考生答案与试题正确答案进行对比,以实现对客观题的在线评分,运用Ajax异步刷新技术、JQuery技术能够实现时间倒数计时和自动交卷功能。功能实现如图2所示。

3  结  论

本文的在线考试系统不需要安装应用程序,考生直接通过网络浏览器即可随时随访问;此外该系统可以使考试更加规范、客观和公平,与此同时,能够在一定程度上减少教师的工作量,并能够改变传统的考试模式,实现了无纸化考试的模式,提高考试相关工作的效率。因而,在未来教育中,在线考试系统将会得到广泛的应用。

参考文献:

[1] 李刚.轻量级JavaEE企业应用实战 [M].第4版.北京:电子工业出版社,2015.

[2] 李洋.SSM框架在Web应用开发中的设计与实现 [J].计算机技术与发展,2016,26(12):190-194.

[3] 籍慧文.Web应用开发中JAVA编程语言的应用探讨 [J].科技创新与应用,2017(7):90.

[4] [美]David Flanagan.JavaScript权威指南 [M].第6版.北京:机械工业出版社,2012.

[5] 苏航.接口的意义及在java web三层架构中的作用分析 [J].西部皮革,2016,38(24):19.

[6] 洪奎.基于Struts框架的Java Web应用开发研究 [J].通讯世界,2016(13):14.

[7] 张丽.基于Java Web在线考试系统 [J].江西科学,2016,34(4):526-528+550.

作者简介:赵雪辉(1997-),男,汉族,河北张家口人,本科在读,研究方向:计算机科学与技术;王金峰(1987-),男,汉族,河北邯郸人,讲师,硕士,研究方向:大数据深度学习。