- 相關推薦
計算機畢業論文--基于AJAX技術提升Web考試系統性能的研究
摘要:網絡考試系統是我國教育遠程化的重要組成部分,然而現有的網上考試系統模式眾多,各有千秋。文章重點研究利用Ajax技術提升Web考試系統性能。改進后,Web考試系統具有C/S結構的優點,并克服了C/S和B/S結構的缺點,提高了系統的實用性。
關鍵詞:AJAX;在線考試系統;B/S系統;C/S系統
一、引言
Ajax是Asynchronous JavaScript and XML(以及DHTML等)的縮寫。它由幾種技術組合而成,包括:基于XHTML和CSS標準的表示;使用Document Object Model進行動態顯示和交互;使用XML Http Request與服務器進行異步通信;使用JavaScript進行綁定。
傳統的Web應用程序強制用戶進入提交、等待、重新顯示的模式,即用戶的界面操作觸發HTTP請求,服務器在接收到請求之后進行業務邏輯處理,比如保存數據,然后向客戶端返回一個HTML頁面。但服務器處理數據的時候,用戶處于等待的狀態,每一步操作都需要等待,使得Web用戶界面在響應靈敏性方面大打折扣。而Ajax帶給用戶完全不同的瀏覽感受。傳統的動態網頁技術被隱藏到Ajax的后臺。用戶所看到的只是一個靜態頁面,不需要在提交頁面后等待或者主動刷新網頁。動態程序反饋的結果被直接無刷新地顯示在這個頁面上。因此利用Ajax開發的Web應用程序能夠提供響應極其靈敏的Web用戶界面,使得應用過程很自然,操作很流暢,并消除了頁面刷新所帶來的閃爍。
二、系統的設計與實現
。ㄒ唬┫到y設計
在用戶登錄進考試系統時,將登錄時間按用戶ID存入session變量中,以便對每個用戶實現計時。
用戶登錄后,利用Ajax技術在后臺實現計時功能,由JavaScript定時向服務器查詢考試時間并實時顯示在用戶的WEB頁面上。考試時間可在JSP的配置文件中給出,計時器到規定時間后如用戶還未提交試卷,則由系統自動提交。
用戶考試過程中,利用Ajax技術由JavaScr-ipt代碼在后臺為用戶定時存盤,一旦系統出現故障,再次進入考試系統時,可根據保存的信息在故障點處繼續進行考試,原來考試的信息可以從服務器端一次性加載。
試卷的形式可以采用一頁一題的方式,也可采用一頁多題的方式。用戶在答題時,系統在后臺為用戶預先從服務器端讀取下一段的試題,當用戶需要下一段試題時,可以很快從客戶端直接加載,而不需要用戶等待服務器端的數據,實現無閃爍、無延遲的效果。
Ajax采用的是一種沙箱安全模型,Ajax代碼(具體而言即XML Http Request對象)只能對所在的同一個域發送請求,在本地機器上運行的代碼只能對本地機器上的服務器端腳本發送請求。雖然上述功能的實現都是基于客戶端腳本,對于用戶來說是可見的,但是Ajax的沙箱安全模型保證了只有來自考試服務器端的客戶端腳本才可以與服務器通信,同時服務器端也只接受有訪問信息的客戶端的請求(通過session等技術)。所以該改進方案保證了考試系統的準確性。