計算機畢業論文--基於AJAX技術提升Web考試系統性能的研究

才智咖 人氣:1.88W

摘要:網路考試系統是我國教育遠端化的重要組成部分,然而現有的網上考試系統模式眾多,各有千秋。文章重點研究利用Ajax技術提升Web考試系統性能。改進後,Web考試系統具有C/S結構的優點,並克服了C/S和B/S結構的缺點,提高了系統的實用性。

計算機畢業論文--基於AJAX技術提升Web考試系統性能的研究

關鍵詞: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使用者介面,使得應用過程很自然,操作很流暢,並消除了頁面重新整理所帶來的閃爍。
  
  二、系統的設計與實現
  
  (一)系統設計
  在使用者登入進考試系統時,將登入時間按使用者ID存入session變數中,以便對每個使用者實現計時。
  使用者登入後,利用Ajax技術在後臺實現計時功能,由JavaScript定時向伺服器查詢考試時間並實時顯示在使用者的WEB頁面上。考試時間可在JSP的配置檔案中給出,計時器到規定時間後如使用者還未提交試卷,則由系統自動提交。
  使用者考試過程中,利用Ajax技術由JavaScr-ipt程式碼在後臺為使用者定時存檔,一旦系統出現故障,再次進入考試系統時,可根據儲存的資訊在故障點處繼續進行考試,原來考試的資訊可以從伺服器端一次性載入。
  試卷的形式可以採用一頁一題的方式,也可採用一頁多題的方式。使用者在答題時,系統在後臺為使用者預先從伺服器端讀取下一段的試題,當用戶需要下一段試題時,可以很快從客戶端直接載入,而不需要使用者等待伺服器端的資料,實現無閃爍、無延遲的效果。
  Ajax採用的是一種沙箱安全模型,Ajax程式碼(具體而言即XML Http Request物件)只能對所在的同一個域傳送請求,在本地機器上執行的程式碼只能對本地機器上的伺服器端指令碼傳送請求。雖然上述功能的實現都是基於客戶端指令碼,對於使用者來說是可見的,但是Ajax的沙箱安全模型保證了只有來自考試伺服器端的客戶端指令碼才可以與伺服器通訊,同時伺服器端也只接受有訪問資訊的客戶端的請求(通過session等技術)。所以該改進方案保證了考試系統的準確性。