趙雪輝 王金峰 于善彬 董普祥 張雪玉


摘? 要:隨著網絡的不斷發展,互聯網的普及范圍越來越廣泛,教育行業更是受到了很大的影響和改變。在線考試管理系統是基于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-),男,漢族,河北邯鄲人,講師,碩士,研究方向:大數據深度學習。