李桂香,胡海清
(浙江同濟科技職業學院,浙江 杭州 311231)
基于JSP的網上考試系統的設計與實現
李桂香,胡海清
(浙江同濟科技職業學院,浙江 杭州 311231)
本文結合網上考試系統的開發過程,分析了基于B/S結構的信息系統的基本特征及運行機制,對基于JSP技術的系統設計與實現過程進行了具體介紹,并對系統設計過程中采用的一些主要技術進行了討論。
網上考試系統;JSP;數據庫
隨著互聯網的普及,一些新興的教學手段如遠程教學、網上培訓在國內越來越普及,網上考試也成為一個熱門話題。基于Web的考試系統作為現代遠程教育的一個重要組成部分,實現了整個考試過程的全自動化管理,大大提高了教學效率。JSP是一種新的動態Web應用技術標準,作為新一代的站點開發語言,JSP(Java Server Page)克服了ASP腳本級執行的不足,具有跨平臺的互操作性、可擴張性、安全性,本文結合網上考試系統的開發,闡述網上考試系統的結構、功能和實現方法。
1.系統的體系結構
基于Web的網絡體系結構目前主要有客戶機/服務器 C/S (Client/Server) 和瀏覽器/服務器 B/S(Browser/Server)兩種模式。經過綜合分析,本系統的總體結構采用B/S模式的網絡體系結構。如圖1所示,該結構共分為三層,表示層、業務層和數據層,系統通過界面外觀層向服務器提交請求;界面規則層則對用戶提交的數據按照業務層要求的接口參數封裝規則封裝用戶數據,然后調用接口層對外提供的命令接口,業務接口層通過對數據的解析分別送入不同的邏輯處理并向用戶返回處理結果;業務規則層則將接口層傳入的數據及命令流入對應處理流程;不同的處理流程分析數據和命令產生出對應的一個實體,這個實體根據其本身的屬性和方法以及上層傳入的命令,將數據處理為數據層需要的接口參數,向數據訪問層提交訪問數據庫的請求,并向業務接口層返回訪問結果;數據訪問層將數據轉化為數據庫可識別的語句,并訪問數據庫層,訪問結果會返回給實體層;數據庫層處理上層傳入的SQL,讀寫數據庫內置對象,并根據其內置對象本身的關系對數據作進一步校驗和處理(數據庫層)。

2.系統的模塊設計
系統從總體上分為系統模塊、教師管理模塊和學生考試模塊,如圖2所示。
(1)系統模塊
系統模塊主要對整個系統進行維護,具有添加、刪除系統管理員;對教師和學生用戶的添加、刪除、統計和查詢等;結合教師的基本信息,進行專業和課程管理,設定院系,對不同院系之間的訪問進行權限控制;考試信息的發布等功能。
(2)教師管理模塊
教師管理模塊主要是教師對課程、試卷等進行維護,主要包括教師本人所授課程的管理;根據題型、難度等設計試題,添加、修改或刪除自己所授課程的試題;可查詢考生的剩余時間、是否交卷或正在考試等狀態信息;根據教師設定的試卷結構從題庫中抽取符合條件的試題自動生成試卷;試卷閱卷等。
(3)學生考試模塊
學生考試模塊主要是學生選擇課程、試卷等功能,主要包括學生選擇考試課程、在線考試、成績查詢等。
3.系統實現技術與方法

目前網上考試系統多使用JSP、ASP、PHP技術,其核心就在于對后臺數據庫的操作,通過對后臺數據庫的修改,并及時將這種修改反映在用戶的瀏覽器端,實現動態和個性化的網頁。
下面對本系統實現過程中用到的主要技術作一些闡述:
(1)連接數據庫

(2)抽題算法
學生登錄后,做好開考前的準備,系統根據出題規則隨機組卷,學生進入相應的試卷進行答題,本系統隨機試卷的生成是利用隨機函數產生的隨機數來選取試題,部分代碼片段如下:


4.部分操作界面顯示

與ASP、PHP技術相比,采用JSP技術開發的考試系統在可移植性、安全性、擴充性以及運行效率等方面均有不同程度的改善與提高,本系統經測試及運行試驗,效果良好。
[1]何雄.JSP網絡程序設計[M].北京:人民郵電出版社,2000.
[2]劉昌華,班鵬新.基于Java技術的網上考試系統[J].武漢工業學報,2003,22(2):40-42.
[3]陳濤.基于W eb的在線考試系統設計與實現[J].四川文理學院學報(自然科學),2007,17(2):58-60.
G434
A
1673-8454(2010)03-0036-02
(編輯:隗爽)