陸劍鋒,王曉慧
(1.泰州職業(yè)技術(shù)學(xué)院;2.江蘇省泰州中學(xué),江蘇 泰州 225300)
基于JSP在線(xiàn)考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
陸劍鋒1,王曉慧2
(1.泰州職業(yè)技術(shù)學(xué)院;2.江蘇省泰州中學(xué),江蘇 泰州 225300)
文章分析了基于JSP技術(shù)在線(xiàn)考試系統(tǒng)的功能,給出了試題管理、試卷管理、答案?jìng)鬏斉c保存等功能的實(shí)現(xiàn)和關(guān)鍵代碼。所實(shí)現(xiàn)的系統(tǒng)功能完整,能夠滿(mǎn)足一般考試的要求,提高了考試與閱卷工作效率。
JSP;考試系統(tǒng);B/S
在線(xiàn)考試系統(tǒng)提供方便的試題、試卷管理,考試過(guò)程管理,閱卷等功能。系統(tǒng)采用JSP+JavaBean+Servlet模式實(shí)現(xiàn)。系統(tǒng)采用B/S模式實(shí)現(xiàn)考試功能,為考試工作提高了方便。
JSP是一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。WEB服務(wù)器在遇到訪(fǎng)問(wèn)JSP網(wǎng)頁(yè)的請(qǐng)求時(shí),首先執(zhí)行其中相應(yīng)的Java程序片段,然后將執(zhí)行結(jié)果以HTML格式返回給客戶(hù)。所有程序片段都在服務(wù)器端執(zhí)行,通過(guò)網(wǎng)絡(luò)傳送給客戶(hù)端的僅僅是程序的運(yùn)行結(jié)果,使得程序?qū)蛻?hù)端瀏覽器的要求降到最低[1]。
考試系統(tǒng)實(shí)現(xiàn)的功能包括考生信息管理,試題管理,試卷生成,考試過(guò)程管理,試卷顯示,考生答題,答案保存,交卷,閱卷以及成績(jī)查詢(xún)等。提供選擇、判斷以及文字錄入等題型的考試。系統(tǒng)包含前臺(tái)考試和后臺(tái)管理兩大功能模塊。前臺(tái)考試包含考生登錄、試題顯示、答題、答案保存以及交卷等操作功能。流程如圖1所示。
系統(tǒng)采用MySQL作為數(shù)據(jù)庫(kù)后臺(tái)軟件,數(shù)據(jù)庫(kù)主要包含以下數(shù)據(jù)表:
(1)考生表。存放考生ID,考號(hào),身份證號(hào),姓名以及登錄情況等信息。
(2)選擇題表。存放選擇題ID,題干,選項(xiàng)以及標(biāo)準(zhǔn)答案等信息。
(3)判斷題表。存放判斷題ID,題干以及標(biāo)準(zhǔn)答案等信息。
(4)試卷表。存放考生ID,試題ID,試題類(lèi)型以及考生答案等信息。
將試題以Excel表格形式編輯后通過(guò)后臺(tái)管理頁(yè)面導(dǎo)入系統(tǒng),便于對(duì)試題的編輯管理。在表格中,每一行為一條試題,包括題干、選項(xiàng)以及標(biāo)準(zhǔn)答案等信息,編輯完成后通過(guò)JavaScript腳本代碼打開(kāi)表格文件將內(nèi)容讀入表單,提交到Servlet。
后臺(tái)管理根據(jù)考生編號(hào)和試題編號(hào)生成一個(gè)1:n的數(shù)據(jù)表,用于表示每個(gè)考生的試卷。為實(shí)現(xiàn)試卷中試題以隨機(jī)順序顯示,在生成試卷時(shí)為每條試題記錄增加一個(gè)隨機(jī)數(shù)屬性,顯示試題時(shí)按該屬性對(duì)記錄排序。
試題、答案以及考生信息均臨時(shí)保存在JavaBean中。為及時(shí)獲取考生的答案,在進(jìn)行選擇題答題時(shí),通過(guò)JavaScript腳本程序獲得答案,并利用AJAX技術(shù)將答案送到服務(wù)器的Servlet程序保存到JavaBean中,通過(guò)AJAX技術(shù)能夠在頁(yè)面無(wú)提交、刷新的狀態(tài)下實(shí)現(xiàn)數(shù)據(jù)從客戶(hù)端向服務(wù)器的提交[2]。主要代碼如下:
以上代碼僅僅是借助AJAX技術(shù)和Servlet將當(dāng)前所答試題答案送到JavaBean中保存。當(dāng)考生保存答案或交卷時(shí),采用類(lèi)似方法將所有答案送入JavaBean,并通過(guò)Servlet程序保存到MySQL數(shù)據(jù)庫(kù)中。
(1)換機(jī)續(xù)考功能。為防止考試過(guò)程中機(jī)器故障導(dǎo)致考試無(wú)法繼續(xù)、考試答案丟失等問(wèn)題,系統(tǒng)提供了答案保存功能??忌鷵Q機(jī)登錄前由系統(tǒng)管理員清除該考生的登錄信息,即可重新登錄繼續(xù)考試,系統(tǒng)會(huì)自動(dòng)將已保存的答案讀取并寫(xiě)入到JavaBean中,且在考試界面中以適當(dāng)方式顯示。
(2)自動(dòng)閱卷功能??忌痪砗?,服務(wù)端得到考生所有答案并寫(xiě)入數(shù)據(jù)庫(kù),由Servlet程序使用SQL查詢(xún)語(yǔ)句對(duì)考生答案與標(biāo)準(zhǔn)答案進(jìn)行比較,實(shí)時(shí)得到考試成績(jī)并供考生查詢(xún)。
系統(tǒng)采用JSP+JavaBean+Servlet模式實(shí)現(xiàn)了無(wú)紙化考試功能,實(shí)現(xiàn)了試卷管理、考試與閱卷等功能的結(jié)合,提高了側(cè)重于客觀(guān)題型考試的工作效率,經(jīng)過(guò)數(shù)次應(yīng)用證明,系統(tǒng)功能和性能均能滿(mǎn)足實(shí)際要求。
[1] 吳亞峰,王鑫磊.精通Net Beans-Java桌面、Web與企業(yè)級(jí)程序開(kāi)發(fā)詳解[M].北京:人民郵電出版社,2007.
[2] 陳衍卿.JavaScript完全自學(xué)寶典[M].北京:清華大學(xué)出版社,2008.
Design and Im p lementation of JSP-based On-line Exam ination System
LU Jian-feng1, WANG Xiao-hui2(1.Taizhou Polytechnic College;2.Jiangsu Taizhou High School, Taizhou Jiangsu 225300,China)
The JSP-based on-line exam ination system is developed, which includes the functional modules of test items management, test paper management, answers transm ission and storage. The implementation methods and key codes are presented. The system meets the needs of general exam inations and increases the ef f ciency of the related work.
JSP; examination system; B/S
TP311
A
1671-0142(2010)01-0005-02
陸劍鋒(1975-),男,江蘇靖江人,副教授.
(責(zé)任編輯 施 翔)