摘 要:如今各大高校都已進入數(shù)字化時代,越來越多的課程選擇在線教學及在線考試。因此提出一種SSH2高??荚嚻脚_設(shè)計方案,它基于J2EE輕量級框架組合。本文介紹了SSH2技術(shù),對系統(tǒng)的總體結(jié)構(gòu)、功能結(jié)構(gòu)和性能需求進行了詳細的說明。
關(guān)鍵詞:SSH2;輕量級;軟件架構(gòu);網(wǎng)絡(luò)考試
中圖分類號:TP311.52
在教學過程中,考試必不可少。通過考試,學生可以發(fā)現(xiàn)知識點掌握不牢固的部分,對學生的學習起到引導和督促的作用;同時教師可以了解學生的學習情況,為日后的教學提供建議。而傳統(tǒng)的考試方法為“一紙定終身”,存在重知識、輕能力的不足,因此造成一部分學生“高分低能”的現(xiàn)象,這與培養(yǎng)綜合素質(zhì)人才的目標背道而馳。因此,建立公平合理的考試機制十分必要,它可以提高學生的學習興趣,提高分析問題和解決問題的能力。采用大規(guī)模試題庫的計算機網(wǎng)絡(luò)考試模式是未來的一個發(fā)展趨勢。
1 J2EE輕量級框架——SSH2
輕量級框架J2EE是相對于重量級框架而言的一種程序設(shè)計模式。目前流行的J2EE框架主要由Struts2,Hibernate,Spring組成。利用J2EE框架,可以簡化開發(fā)的復雜度,因此適合于中小型企業(yè)使用。使用輕量級框架一方面不依賴于任何容器,可以提高開發(fā)效率;另一方面輕量級框架大多是開源項目,提供了良好的設(shè)計和許多工具及大量的現(xiàn)有可供參考的代碼設(shè)計,有利于項目的快速開發(fā)。
1.1 Struts2框架
Struts2框架是Struts的新產(chǎn)品。它將Struts1和WebWork技術(shù)進行合并,是一個全新的Struts框架。Struts2將WebWork作為核心,使用攔截器處理用戶請求,來使業(yè)務(wù)邏輯控制器與Servlet API完全分離。
1.2 Spring框架
Spring是為解決企業(yè)應(yīng)用程序開發(fā)的復雜性而創(chuàng)建的一個開源框架。Spring框架的主要優(yōu)點之一就是它的分層架構(gòu),分層架構(gòu)可以允許用戶選擇組件,同時為J2EE應(yīng)用程序開發(fā)提供基礎(chǔ)的集成框架。
1.3 Hibernate框架
Hibernate是開源的,是一種對角關(guān)系映射的框架(ORM),它對JDBC對象進行輕量級封裝,使得JAVA程序員可以任意的使用面向?qū)ο蟮木幊趟季S來對數(shù)據(jù)庫進行操作。
采用Struts2+Spring+Hibernate的軟件框架,可以提高代碼的重用性和開發(fā)效率,其優(yōu)勢在于:
(1)組件之間是以松耦合的方式耦合在一起的,采用AOP模式,因此各組件之間的依賴關(guān)系僅僅在接口層次。
(2)獨立于各種服務(wù)器,可以實現(xiàn)write once,run anywhere。
(3)開發(fā)過程中可以自由地選擇、替換部分或全部組件。
(4)使用Hibernate提供的DAO操作,可以有效地減少編寫成本,方便對事務(wù)進行控制。
(5)使用的組件是企業(yè)級的,可以保持系統(tǒng)的獨特性。
2 高??荚嚻脚_系統(tǒng)的設(shè)計
2.1 系統(tǒng)總體結(jié)構(gòu)
基于SSH2技術(shù)的高??荚嚻脚_采用J2EE三層架構(gòu)。系統(tǒng)總體結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)總體框架
系統(tǒng)分為表現(xiàn)層、業(yè)務(wù)邏輯層和數(shù)據(jù)服務(wù)層三層。其中將數(shù)據(jù)訪問、業(yè)務(wù)規(guī)則等工作交由中間層處理,客戶端不直接與數(shù)據(jù)庫進行交互,而是通過控制器與中間層進行連接,然后由中間層與數(shù)據(jù)交互。
在系統(tǒng)中,表現(xiàn)層使用JSP頁面結(jié)構(gòu)充當,它負責收集用戶請求數(shù)據(jù),將其提交到指定的控制器上。
中間層則采用Spring+Hibernate,同時為了分享業(yè)務(wù)邏輯層和控制層,又可將其細分為:
(1)WEB層負責表現(xiàn)層和業(yè)務(wù)邏輯層的交互,調(diào)用業(yè)務(wù)邏輯層并將數(shù)據(jù)返加給表現(xiàn)層。
(2)Service層(業(yè)務(wù)邏輯層)負責實現(xiàn)業(yè)務(wù)邏輯,對DAO對象進行封裝。
(3)DAO層(數(shù)據(jù)訪問層)負責與持久化對象交互,將數(shù)據(jù)的增、刪、改、查的原子操作封裝起來。
(4)PO層(持久化對象層)通過關(guān)系-實體映射工具將關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)映射成為對象,以面向?qū)ο蟮姆绞讲僮鲾?shù)據(jù)庫。
對于整個系統(tǒng)來說,中間層是關(guān)鍵所在。而Spring貫穿于整個中間層,將WEB層、Service層、DAO、PO層無縫的整合起來。
數(shù)據(jù)服務(wù)層則是用Oracle數(shù)據(jù)庫來進行數(shù)據(jù)存儲。
2.2 系統(tǒng)功能結(jié)構(gòu)
網(wǎng)絡(luò)考試平臺主要由用戶模塊、課程管理模塊、成績管理模塊、系統(tǒng)留言模塊及在線考試模塊組成。系統(tǒng)主要功能模塊如下:
(1)用戶模塊:對用戶進行權(quán)限管理,來實現(xiàn)對用戶的授權(quán)。進行權(quán)限管理的目標是讓系統(tǒng)允許具有某種權(quán)限的用戶進行某些特定模塊。其中,系統(tǒng)管理員可以定義其他所有角色的訪問權(quán)限,這樣能以控制用戶權(quán)限的方式來指定用戶所訪問的模塊。
(2)課程管理模塊:可以管理所有的課程信息,進行添加、查詢、更改等操作。課程信息管理模塊對于不同的角色,有不同的使用。如:新開設(shè)的課程錄入到系統(tǒng)中;對需要更新的課程信息進行刪除或更新;對已有的課程信息進行查詢;同時還具有查詢課表和選課的功能。
(3)成績管理模塊:學生在查詢成績時通過學生角色進入系統(tǒng)進行查詢,只能查看本人成績,同時也可將成績以EXCEL格式導出,方便保存。教師可以進行成績錄入的操作。
(4)在線考試模塊:已經(jīng)注冊的學生,在一定的規(guī)則下進行基于網(wǎng)絡(luò)的各類課程的考試過程。學生登錄成功后,首先要閱讀結(jié)合課程與考試環(huán)境所指定的規(guī)則,遵守相應(yīng)的規(guī)則后,系統(tǒng)隨機選擇試題組成一套完整試卷。
(5)系統(tǒng)留言模塊:系統(tǒng)的不同用戶之間可以進行實時交流互動。
2.3 系統(tǒng)用例
根據(jù)需求,系統(tǒng)用戶分為管理員、學生和教師三類,如圖2所示:
圖2 系統(tǒng)整體功能需求用例
(1)教師用戶的功能需求
包括考試測評功能、答疑功能等:考試測評功能制定考試的評分標準和基本要求,監(jiān)控學生的在線考試,進行成績統(tǒng)計和對學生答卷進行在線測評等。課程答疑功能實現(xiàn)學生與教師之間的互動,為解答學生問題提供方便。答疑功能分為兩部分:實時在線答疑和非實時答疑。
(2)學生用戶的功能需求
包括協(xié)作學習功能、綜合測試功能、查詢信息功能和留言功能等。
(3)管理員的功能需求
包括管理成績功能、管理資源庫功能、管理老師功能、注冊管理功能和維護系統(tǒng)的功能等。
2.4 系統(tǒng)性能需求
根據(jù)網(wǎng)絡(luò)考試的特點,高校考試平臺系統(tǒng)的性能需求包括:
(1)系統(tǒng)需要建立一個大型的、綜合型的數(shù)據(jù)庫。數(shù)據(jù)庫以共享信息為目的,將網(wǎng)絡(luò)考試管理、教學管理等的功能集為一體。
(2)系統(tǒng)應(yīng)方便管理者實現(xiàn)網(wǎng)上考試,能夠在不同地理位置及時管理信息,定期提交關(guān)于系統(tǒng)各方面的報告,提供支持決策的數(shù)據(jù)文件。
(3)系統(tǒng)應(yīng)具備向相關(guān)部分自動提供信息傳遞、加工處理數(shù)據(jù)等的幫助功能。系統(tǒng)當中的數(shù)據(jù)庫主要存儲管理過程中產(chǎn)生的動態(tài)及靜態(tài)數(shù)據(jù)等。
(4)系統(tǒng)應(yīng)盡可能簡化用戶的操作,符合用戶進行業(yè)務(wù)處理的習慣,結(jié)合文字、圖形、影像等多種方式達到目標,提供直觀生動、多種形式的資料數(shù)據(jù)。
(5)系統(tǒng)中數(shù)據(jù)的設(shè)計和維護必有要有嚴格的安全保護措施。系統(tǒng)內(nèi)部通過網(wǎng)絡(luò),可以對信息進行相關(guān)的操作,如增加、修改和查詢等。但是非權(quán)限部分無法操作,只能在權(quán)限內(nèi)使用系統(tǒng)。
3 結(jié)束語
本文基于Struts2+Spring+Hibernate軟件框架來構(gòu)建SSH2高校網(wǎng)絡(luò)考試平臺。即可集中于學校機房統(tǒng)一進行考試;也可進行不同地理位置的分散的網(wǎng)絡(luò)考試,同時也可用于平時測驗和在線練習。本文首先介紹了輕量級軟件框架SSH2,其次結(jié)合系統(tǒng)需求,闡述了系統(tǒng)的總體結(jié)構(gòu)和功能結(jié)構(gòu),在此基礎(chǔ)上說明了系統(tǒng)的性能需求。在未來的教學過程中,網(wǎng)絡(luò)在線考試將得到越來越多的應(yīng)用,對提高教學質(zhì)量來說將起到重要的作用。
參考文獻:
[1]楊文,廖寧.基于SSH2的高校網(wǎng)絡(luò)考試平臺的研究與設(shè)計[J].信息技術(shù),2013.
[2]王強.基于J2EE網(wǎng)上考試系統(tǒng)的設(shè)計與實現(xiàn)[D].電子科技大學,2013.
[3]黃震.在線考試系統(tǒng)分析與設(shè)計[D].北京郵電大學,2012.
作者簡介:呂紹鑫(1982.03-),男,湖南邵陽人,碩士,工程師,研究方向:信息安全與網(wǎng)絡(luò)工程。
作者單位:湖南工藝美術(shù)職業(yè)學院,湖南益陽 413000