(計算機應用技術專業(yè)論文)基于struts框架的在線考試系統.pdf_第1頁
(計算機應用技術專業(yè)論文)基于struts框架的在線考試系統.pdf_第2頁
(計算機應用技術專業(yè)論文)基于struts框架的在線考試系統.pdf_第3頁
(計算機應用技術專業(yè)論文)基于struts框架的在線考試系統.pdf_第4頁
(計算機應用技術專業(yè)論文)基于struts框架的在線考試系統.pdf_第5頁
已閱讀5頁,還剩60頁未讀, 繼續(xù)免費閱讀

(計算機應用技術專業(yè)論文)基于struts框架的在線考試系統.pdf.pdf 免費下載

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

中文摘要 基于w e b 平臺的在線考試系統是伴隨著網絡技術和數據庫技術而逐漸發(fā)展 起來的。在線考試作為計算機輔助教學的一部分,同時也代表了計算機輔助教學 延伸的一個方向。應用在線考試,可以確??荚嚨母咝?、科學、公平,能夠及時 揭示學生知識能力的局部缺陷,使教與學都更有針對性,能夠更好地開展因材施 教,從而提高了學校的教學水平。 本系統構建于b s 環(huán)境,主要基于s t r u t s 框架。s t r u t s 是阿帕奇軟件基金 下的一個源自模型、視圖、控制設計模式的開放源代碼項目,是m v c 的一種 實現,它很好的結合了j s p ,j a v as e r v l e t ,j a v ab e a n 等技術。 考試系統由前臺考試系統和后臺管理系統組成。系統主要有管理員、教師、 學生三種不同的角色:管理員進行系統維護,包括設置系統的基本信息和維護教 師、學生的帳號。教師負責不同類型試題的錄入、查詢、修改、刪除等操作。學 生可以在線參加考試和查詢考試成績??忌M行有效的身份驗證登錄后,選擇考 試科目,由計算機自動靈活、隨機的抽取試題庫中的各類試題組成各種形式的試 卷,不同的考生生成的試題是不同的,學生在規(guī)定的時間內進行答題,該方式可 以最大程度減輕學生的作弊機會。 論文共分6 章,其中第4 和第5 章是系統功能研究與設計的關鍵。 關鍵詞:在線考試系統、m v c 模式、s t r u t s 框架、題庫 a b s t r a c t a sap a r to fc a ia n dan e wd i r e c t i o nw h e r et h ec a ie x t e n d s t h ew e b 。b a s e d o n l i n ee x a m i n a t i o ns y s t e mi sb e i n gi m p r o v e dw i t ht h ed e v e l o p m e n to fn e t w o r k t e c h n o l o g ya n dd a t a b a s et e c h n o l o g y t h ea p p l i c a t i o no no n l i n ee x a m i n a t i o ns y s t e m c a ne n s u r eh i g he f f i c i e n c y , s c i e n t i f i c i t ya n df a i r n e s s 。碭ea p p l i c a t i o no no n l i n e e x a m i n a t i o ns y s t e mc a nr e v e a ll o c a ld e f e c t so fs t u d e n t s k n o w l e d g ea n da b i l i t yi n t i m e t h ea p p l i c a t i o no no n l i n ee x a m i n a t i o ns y s t e mi sd i r e c ta tt e a c h i n ga n dl e a r n i n g e v e nm o r ea n dc a nt e a c ha c c o r d i n gt ot h es t u d e n t sa b i l i t yb e t t e ra n dt h u si m p r o v et h e t e a c h i n gl e v e lo fs c h o o l s o n l i n ee x a m i n a t i o ns y s t e mi sb a s e do nb se n v i r o n m e n ta n ds t r u t sf r a m e w o r k s t r u t si sa no p e n s o l i c ep r o j e c ts p o n s o r e db yt h ea p a c h es o f t w a r ef o u n d a t i o n , i ti s a s e r v e r - s i d ej a v ai m p l e m e n t a t i o no ft h em o d e l - v i e w - c o n t r o l l e r ( m v c ) d e s i g n p a r e m i t sb a s eo f t e c h n o l o g yi n c l u d ej s p ,j a v as e r v l e t ,j a v ab e a n t h eo n l i n ee x a m i n a t i o ns y s t e mc o n s i s t so fe x a m i n a t i o ns u b s y s t e ma n d b a c k - s t a g em a n a g e m e n ts u b s y s t e m i tc o n s i s t so ft h r e em o d u l e :s y s t e mm a n a g e , t e a c h e ra n ds t u d e n t t h et e a c h e ra d d s ,m o d i f i e sa n di n q u i r i e se x a m i n a t i o nq u e s t i o n s s t u d e n tc a nc h o o s et h es u b j e c to fe x a m i n a t i o na c c o r d i n gt ot h e i ro w nn e e d s a f t e rt h e e x a m i n e e sv e n f yt h ei d e n t i t i e sa n dl o gi 1 1 ,t l l e yc h o o s et h es u b j e c to fe x a m i n a t i o n t h e c o m p u t e r sw i l le x t r a c ta tr a n d o ma l lk i n d s o fe x a m i n a t i o nq u e s t i o n si nt h et e s t q u e s t i o nb a n ka n df o r mv a r i o u se x a m i n a t i o np a p e r sl i m b e r l ya n df r e e l y s t u d e n t ( e x a m i n e e s ) a n s w e rq u e s t i o n sw i t h i nt h et i m es t i p u l a t e d 1 1 1 i sm e t h o dc a nr e d u c et h e c h a n c e so fs t u d e n t s c h e a t i n gi nt h ee x a mt ot h em a x i m u me x t e n t t h ep a p e ri n c l u d e ss i xc h a p t e r s t h ec h a p t e r4a n dt h ec h a p t e r5a r et h ek e y p o i n t so f r e s e a r c hd e s i g no f s y s t e mf u n c t i o n s k e yw o r d s :t h eo n l i n ee x a m i n a t i o ns y s t e m , m v cm o d e ,s t r u t sf r a m e w o r k , e x a m i n a t i o nq u e s t i o nb a n k 獨創(chuàng)性聲明 本人聲明所呈交的學位論文是本人在導師指導下進行的研究工作和取得的 研究成果,除了文中特別加以標注和致謝之處外,論文中不包含其他人已經發(fā)表 或撰寫過的研究成果,也不包含為獲得丕盜盤鱟或其他教育機構的學位或證 書而使用過的材料。與我一同工作的同志對本研究所做的任何貢獻均已在論文中 作了明確的說明并表示了謝意。 學位論文作者簽名:產式溫喝 簽字f l 期: 弘口7 年j 月二j 同 學位論文版權使用授權書 本學位論文作者完全了解墨鲞盤堂有關保留、使用學位論文的規(guī)定。 特授權苤洼盤堂可以將學位論文的全部或部分內容編入有關數據庫進行檢 索,并采用影印、縮印或掃描等復制手段保存、匯編以供查閱和借閱。同意學校 向國家有關部門或機構送交論文的復印件和磁盤。 ( 保密的學位論文在解密后適用本授權說明) 學位論文,乍者簽名:夕鈕墨p 日 導師簽名: 幽 簽字同期:h 胡年r 月工f 同簽字f i 期:枷了年r 月j r 同 天津大學碩士學位論文第一章緒論 第一章緒論 1 1 在線考試系統研究的背景及意義 在計算機技術和網絡技術快速發(fā)展的推動下,學校的辦學模式也發(fā)生著翻天 覆地的變化,網絡教育逐漸成為當今國際國內教育發(fā)展的熱點口3 劓,也是現代 教育技術的主流發(fā)展方向之一障1 ;作為檢驗教學效果的考試是教學方式改革的重 中之重,必須從采用傳統的以人工方式為主的筆試向以計算機技術為主的無紙化 網絡在線考試發(fā)展。 考試的目的,一是為了考察學生的學習情況,二是為教師提供教學分析的依 據。之前,各個學校大多采用筆試的考試方式,組織一次考試至少要經過五個步 驟,即人工出題、考生考試、人工閱卷、成績評估和試卷分析:在此方式下,存 在諸多弊病盯1 : 工作量大、周期長。一次單元測驗從出題、組卷、印刷、考生身份審 核、監(jiān)考,到教師閱卷評分、成績統計及分析等工作,整個過程工作量 大、效率低,花費了教師大量的時間和精力造成人力資源及時間上的浪 費。一次單元測驗好多天后才能出結果,影響了教學的連貫性。 反饋能力弱。試題選擇隨意性大,對成績的分析停留在平均分、及格率 等表面層次上,難以統計出學生對各個知識點的掌握程度,教學不能對 癥下藥。 漏洞多、公正性差??记奥╊}的情況;試卷容易出現錯、漏、缺現象, 引起不必要的麻煩。由于是手工操作,難免出現錯誤和一些人為因素, 影響了考試的公正性和嚴肅性陽訓。 由此可見,在計算機信息處理技術飛速發(fā)展的今天,傳統的考試方式己經不 能適應現代考試的需要。隨著計算機技術的發(fā)展及計算機的日益普及,作為一種 高效、快捷、準確、科學的考試方式利用計算機網絡技術實現的網上在線考試取 代傳統的手工考試成為一種趨勢。在線考試系統的優(yōu)勢不但體現在人力上也體現 在物力上,與傳統的考試方式相比,有以下特性h 1 : 考試靈活化。 考試時間靈活不受時間和空間的限制。由于網絡無限廣闊的空間,信息與知 識的傳輸己經超越了地區(qū)、國界的限制,在線考試系統也突破了傳統考試的時間 天津大學碩士學位論文第一章緒 論 與學校地域上的限制,可以在同時段內組織集體考試,也可以在規(guī)定的時間段內 的任意時間讓考試者隨時隨地參加考試開始測試,檢驗自己的知識水平。 題庫共享化。 題庫,顧名思義就是試題的倉庫,是把許多題目集合到一起,供試卷編制者 隨時查詢和使用的集合。在先進理論指導下的使用計算機管理試題的電子題庫, 具有科學、高效、經濟、靈活、方便等顯著特點,為題目的保存、分類和檢索提 供了便利。為數據庫中的題庫數據設定好共享方案,教師只要輸入考卷的難度級 別、試卷的題型題量等約束條件,軟件會方便快捷自動生成符合要求的試卷。題 庫是隨著時間的變化不斷更新的,更新的考題反映到各個考試中,學生可以學到 最新學到的知識。為編制試卷提供了高效率和低成本的手段。 試卷保密化 在傳統考試中,通常下發(fā)試卷等環(huán)節(jié)需要較長的時間,接觸的人員相對較多, 給保密帶來一定的困難:網絡考試系統考前無任何成套試卷,考試時由計算機現 場動態(tài)地隨機生成,減少了人為接觸試題的可能性,最大限度地避免了出現漏題 的現象。各考生的試卷不完全相同,避免互相參看導致作弊現象的發(fā)生。 考試管理智能自動化。 考試全程的許多環(huán)節(jié)從學員管理、過程監(jiān)控,到試卷評閱、成績審核都實現 了智能化,無形中減輕了教學人員很多日常繁瑣的工作??荚嚨淖詣踊芾?,有 效降低教師考評的工作量與工作難度,讓教師能更為集中精力在教學與出題上, 提高考試的全面性與針對性。判卷由系統自動完成,極大的提高了準確性,防止 了人工判卷時經常出現的錯判、漏判和分數計算錯誤的情況,使考試更加公正合 理,具有權威性。 統計分析簡單化 由于考試系統從出題、考試到判卷實現了數字化,因此充分利用計算機網絡 的智能計算能力、信息分析能力可以方便地在第一時間完成對考卷的分析與評估 和學生成績的統計分析,并可對知識考點進行自動追蹤,實現對考生的知識弱點 的準確分析,使原來非常煩鎖的分析統計工作變的簡單易行。 考試結果查詢方便化。 計算機內存儲的數據可以長期有效保存,考生通過計算機的交互即可完成對 成績進行查詢,增加了考試的公開性與透明度。 基于上述分析,采用在線考試系統實現無紙化考試可以合理、有效地利用計 算機網絡資源,充分發(fā)揮計算機技術的優(yōu)勢,推進教學模式改革、推進創(chuàng)新人才 培養(yǎng)、促進資源共享,避免重復建設、大大解決了隨著考試類型的不斷增加及考 試要求的不斷提高,教師的工作量越來越大的難題,使考試的結果更準確、分析 天津大學碩士學位論文第一章緒 論 更方便,統計更迅速,從而使考試更趨于公證、更趨于客觀,更加激發(fā)學生的學 習興趣。深入地討論和研究網絡考試系統的設計和開發(fā)問題,具有重大的意義。 1 2 在線考試系統在國內外的研究現狀及分析 計算機輔助測試( c a t ) 于2 0 世紀6 0 年代初起源于美國h 1 ,經過多年的發(fā) 展,已經在國內外得到了廣泛應用,有許多專門的考試機構采用計算機輔助測試 對考試對象進行考核。國際上比較著名的在線考試有:美國組織的“計算機文化 考試”、“高級就業(yè)計算機科學考試”、“專業(yè)領域考試”;英國計算機學會組織并 普及到英聯邦國家的“計算機考試 ;日本設立的“信息技術人員考試等心1 1 1 。 在國內,我國教育部高教司于2 0 0 0 年5 月推出了“現代遠程教育資源建設技 術規(guī)范( 試行本) ,其中對網絡題庫、考試系統的建設規(guī)范進行了定義。2 0 0 2 年, 全國信息技術標準化技術委員會教育技術分委會最終形成了有中國特色的網絡 教育技術標準體系( c h i n e s ee :l e a m i n gt e c h n o l o g ys t a n d a r d s ,簡稱c e l t s ) , 其中涉及到網絡考試的標準有:練習測試互操作( c e l t s 1 0 ) 、平臺與媒體標 準引用( c e l t s 一1 7 ) 、教學資源評價( c e l t s - 2 2 ) 等;與此同時國內也出現了 許多網絡考試系統,著名的有:人事部和電子工業(yè)部組織的“中國計算機軟件專 業(yè)技術資格和水平考試”、教育部組織的“全國計算機等級考試”、全國電大網絡 考試、教育部從劍橋引進的“劍橋信息技術證書考試、交通管理部門組織的“駕 駛員理論考試。 目前在國內外就網絡化考試系統在理論研究和技術實踐方面的探索,大體經 歷了三個發(fā)展階段:兩層c s 應用結構、多層c s 應用結構及b s 結構。 兩層c s 應用結構 基于c s 結構的考試系統,在這種模式的系統結構中需要分別開發(fā)和安裝 相應的考試服務系統和考試客戶系統。在考試機( 即客戶端) 上安裝考試應用程 序,應用程序是在客戶工作站上運行的,而不是在服務器上運行的;試題內容放 在遠程服務器上,服務器只提供資源( 數據) 的集中管理和訪問途經。缺點是系 統的企業(yè)邏輯都編寫在客戶端的應用程序中,要求客戶端的個人計算機必須要有 足夠的能力,造成客戶端非常臃腫;且當應用系統需求改變或版本升級時,所有 在客戶端的應用程序都必須改變,都要對機器進行安裝、配置,維護困難一1 2 ”1 , 比較煩瑣;同時此類軟件會先在客戶端生成臨時數據庫,在考生答完題后再將所 有答案提交并傳至服務器,這個期間會出現機器故障、操作錯誤、竊取修改等情 況,導致客戶端數據被更改,這樣,考試和考題的安全性受到了影響,使得考試 不能公平的進行,失去考試的意義。 天津大學碩士學位論文第一章緒論 多層c s 應用結構 為了克服兩層c s 應用結構不足之處,適應迅速發(fā)展起來的企業(yè)應用,出 現了多層分布式應用模式。多層c s 應用結構的特點是在傳統的兩層c s 應用 結構中的客戶端與服務器之間插入一層中間件( m i d w a r e ) 或稱為應用服務器 ( a p p l i c a t i o ns e r v e r ) n 鍆,由中間件與數據庫通信并處理應用系統的業(yè)務邏輯,中 間件可以有多個并且可以安裝在不同的計算機上,將處理工作分散開來以形成分 布式計算改善性能。多層分布式應用模式具有如下優(yōu)點:分布式數據處理可以提 供負載平衡,提高了應用系統的重用性和擴展性;由于“瘦”客戶端程序只處理 界面的顯示,任何業(yè)務邏輯的變動只需修改應用服務器上的組件,而無需重新升 級客戶端的程序,不需要再考慮安裝和配置數據連接軟件的問題n 幻。 b s 結構 基于b s 模式的網上考試系統采用三層結構,即:瀏覽器w e b 服務器數據 庫服務器,這種結構的網絡考試系統突破時空限制,可在任何時間、任何能夠上 網的地點進行遠程考試和考務工作??蛻舳酥恍璋惭b一個標準的w e b 瀏覽器, 其它應用程序都存儲在w e b 服務器上,負責接收瀏覽器的w e b 頁請求和數據請 求,并處理w e b 頁請求,同時將數據請求通過數據庫接口程序轉換成數據庫服 務器能夠接收的形式,送到數據庫服務器,數據庫服務器執(zhí)行相應的數據庫操作, 并將結果通過數據庫接口程序的轉換送回w e b 服務器,w e b 服務器將結果處理成 瀏覽器能夠接收的形式后,送回發(fā)出請求的瀏覽器,顯示結果。這種b s 結構 的網絡考試系統適用于一個考場或幾十個考場,適合幾十人或幾萬人同時進行考 試,解決了考試系統對客戶機軟件過分依賴的問題,減輕了客戶機軟件維護工作 量:考試系統的安裝和試題裝卸更加簡便,只需在服務器上進行安裝即可呻1 。實 現了中途換機等意外情況下的繼續(xù)考試,使得網絡化考試比傳統的紙面考試和單 機化考試具有無以比擬的效率和公平上的優(yōu)越性,是現代化考試發(fā)展的方向。 1 3 論文的主要工作和組織結構 作者調研了國內外各種網絡考試系統的研究現狀,研究了如j 2 e e 、m v c 模 式的s t r u t s 架構、數據持久化技術等網絡考試測評系統的設計與開發(fā)的方法和 技術手段,。根據我校的教學環(huán)境設計了采用目前主流b s 結構、以輕量級j 2 e e 多層框架為基礎、易維護、跨平臺、擴展性好的河北商貿學校在線考試系統。該 系統包含網絡考試系統的基本功能,從教師出題、評卷、成績分析,到學生考試、 查詢考試成績,均由系統自動完成。 在本論文中,介紹了在線考試系統的主要功能及實現方法,全文共分6 章: 天津大學碩士學位論文第一章緒論 第一章介紹了在線考試系統的研究背景及意義,分析了在線考試系統在國內 外的研究現狀。 第二章介紹了系統設計及實現需要的相關原理及技術。 第三章對系統進行可行性及需求分析,明確了需要解決的主要問題和系統應 該具有的功能。 第四章詳細闡述了系統的設計思想及系統各組成部分的構成。 第五章介紹了系統的實現過程及方法。 第六章對研究工作進行了總結,并提出了今后系統需改進的地方及發(fā)展方 向。 天津大學碩士學位論文 第二章在線考試系統實現所需相關技術綜述 第二章在線考試系統實現所需相關技術綜述 2 1d s p 技術概述 2 1 1j s p 技術概述n 5 1 n 6 1 j s p 是j a v as e r v e rp a g e s 的簡寫,是由s u nm i c r o s y s t e m s 公司倡導、許多公司 參與一起建立的一種動態(tài)網頁技術標準,實現了普通靜態(tài)h t m l 和動態(tài)頁面輸出 的混合編碼技術。j s p 是基于j a v as e r v l e t 以及整個j a v a 體系的w e b 開發(fā)技術,利用 這一技術可以建立先進、安全和跨平臺的動態(tài)網站。借助形式上的內容和外觀表 現的分離,w e b 頁面制作的任務可以比較方便地劃分給頁面設計人員和程序員, 并方便地通過j s p 來合成。j s p 是服務器端應用,它們是與j a v a 相關的一種 h t i v i l 文檔,接受請求并生成響應,此請求通常產生于一個w e b 客戶端,代碼被 首先轉換成源文件,再編譯成文件并由虛擬機執(zhí)行。j s p 從s e r v l e t 技術發(fā)展而 來的,是服務器端應用,擁有對服務器端資源的訪問權限,在運行時,j s p 被首 先轉換成等價的s e r v l e t ,并以s e r v l e t 的形態(tài)編譯運行,并在s e r v l e t 容器環(huán)境 中執(zhí)行n 鉑隨1 。這種編譯操作僅在對頁面的第一次請求時發(fā)生,雖然首次調用需要 幾秒的編譯加載時間,但后續(xù)請求只需調用服務器端緩存的就可以了,比每次請 求都要解釋執(zhí)行的代碼要快,因此它的效率和功能與s e r v l e t 相比沒有差別, 一樣具有很高的效率,使得j s p 頁面具有了s e r v l e t 的良好性能。j s p 技術能讓 w e b 開發(fā)人員和網頁設計人員快速地開發(fā)和維護動態(tài)w e b 主頁;把用戶界面從系 統內容中分離開來,使得設計人員能夠在不改變底層動態(tài)內容的前提下改變整個 網頁布局;j s p 設計的目標與理想是一次編譯,到處可執(zhí)行,j s p 技術被設計成 獨立于平臺和服務器,因此可以利用這一技術建立安全和跨平臺的網站,即能在 l i n u x 下運行,也能在其他操作系統上運行。 2 1 2d s p 的處理過程 具體編寫j s p 常用的編譯器有j b u i l d e r 、e c l i p s e 等n 砌嘲;執(zhí)行j s p 代碼 需要在服務器上安裝j s p 引擎,通常使用t o m c a t 、j r u n 、w e b l _ d g i c 等應用服務 器。j s p 的處理過程:首先客戶通過瀏覽器向w e b 服務器發(fā)出請求;服務器在收 到訪問j s p 頁面的請求時,首先轉換成成等價的s e r v l e t ,并以s e r v l e t 的形態(tài) 編譯成c l a s s 文件,并在s e r v l e t 容器環(huán)境中執(zhí)行c l a s s 文件程序段,然后將執(zhí)行 天津大學碩士學位論文 第二章在線考試系統實現所需相關技術綜述 請求 - - 一 響應 圖2 - 1 j s p 的處理過程 結果連同j s p 文件中的h t m l 代碼二起返回給客戶。j s p 的處理過程如圖2 1 所示。j s p 與j a v as e r v l e t 一樣,是在服務器端執(zhí)行的,通常返回該客戶端的就 是一個h t m l 文本,因此客戶端只要有瀏覽器就能瀏覽。 2 1 3j s p 的優(yōu)點 跨平臺 代碼基本上可以在所有平臺環(huán)境中開發(fā),在任意環(huán)境中進行系統部署、擴展, 更換系統時,代碼不用做任何更改。在服務器端,j s p 引擎解釋j s p 標識和小 腳本,生成所請求的內容,并且將結果以h t m l ( 或者x 地) 的形式發(fā)送給瀏覽 器,基于h t m l 的w e b 瀏覽器都是完全可用性。 可重用組件 j s p 技術很容易整合到多種應用體系結構中,作為j a v a 平臺的一部分,j s p 擁有j a v a 編程語言“一次編寫,各處運行”的特點,開發(fā)人員能夠共享和交換 執(zhí)行普遍操作的組件,基于組件的方法加速了總體開發(fā)過程。 天津大學碩士學位論文第二章在線考試系統實現所需相關技術綜述 2 1 4s e r vie t 與j a v a b e a n s 馴 s e r v l e t 是服務器端使用j a v as e r v l e t 應用程序設計接口( a p i ) 及相關類 和方法的j a v a 程序h 1 ,它是c g i ( 公共網關接口) 程序設計的j a v a 技術解決 方案。s e r v l e t 使用j a v as e r v l e t a p i 類,+ j a v as e r v l e t a p i 定義了一個服務器 之間的標準接口,這使得s e r v l e t 具有跨服務器平臺的特性。s e r v l e t 運行在服 務器上,在j 2 e e 架構中,s e r v l e t 屬于w e b 層,在來自w e b 瀏覽器的h t t p 請求與h t t p 服務器上的數據庫與應用程序之間起一個中間層的作播。當j s p 頁面第一次被請求時,j s p 頁面將被轉換成s e r v l e t ,然后被編譯成c l a s s 文 件,以后再有客戶請求該j s p 頁面時,j s p 頁面不會被重新編譯,而是直接執(zhí) 行已編譯好的c l a s s 文件9 l 。s e r v l e t 的生命周期始于將它裝入w e b 服務器的 內存時,并在終止或重新裝入s e r v l e t 時結束。 j a v ab e a n 是用j a v a 來定義的一種軟件組件模型,有點類似于m i c r o s o f t 的c o m 組件概念凹 1 4 o 首先,j a v a b e a n s 是一種規(guī)范,一種可重復使用j a v a 組件 的技術規(guī)范。其次,j a v a b e a n s 是一個j a v a 的類,一個p u b li c 類型的類,。對應于 一個獨立的j a v a 文件。當j a v a b e a n s 這樣的一個j a v a 類在具體的j a v a 程序中被示 例之后,可以用來負責與數據庫的交互以及數據提取或復雜的計算任務口訂噙1 。 2 2m v c 模式 2 2 1j s p 程序開發(fā)設計模式 j s p 程序開發(fā)設計模式有三種:單純的j s p 頁面編程、j s p + j a v ab e a n 編程、 j s p + s e r v l e t + j a v ab e a n 編程。 單純的j s p 頁面編程 應用j s p 中的腳本直接在j s p 頁面中實現各種功能。因為將大量j a v a 代碼 與h t 虬代碼文本混淆在一起,給程序的維護和調試帶來很大困難,無法應用到 大型、中型甚至小型的j s pw e b 開發(fā)中。 j s p + j a v ab e a n 編程 實現了頁面顯示和業(yè)務邏輯的分離,適用于小型的j s pw e b 開發(fā)。j a v ab e a n 用來處理數據和完成具體業(yè)務;j s p 用來接受用戶請求,調用相應j a v ab e a n 完 成業(yè)務邏輯,并將處理結果返回給用戶,主要用于表現數據。程序流程控制是在 j s p 頁面中實現,使得j s p 頁面非常復雜,隨著系統功能的擴展程序會變得難以 維護。 j s p + s e r v l e t + j a v ab e a n 編程 天津大學碩士學位論文第二章在線考試系統實現所需相關技術綜述 j s p + j a v ab e a n 編程模式的基礎上加入s e r v l e t 來掌握程序的流程控制, j s p 只用于頁面的顯示。這種模式程序的層次關系明顯,各組件分工明確,有利 于系統的進一步擴展。j s p + s e r v l e t + j a v ab e a n 設計模式如圖2 2 所示。 圖2 - 2j s p + s e r v l e t + j a v ab e a n 設計模式 圖2 - 3j s p + j a v ab e a n 設計模式 2 2 2m v c 設計模式簡介 m v cn 嗣是m o d e l 、v i e w 、c o n t r o l l e r 的縮寫,是a p p l i c a t i o n 開發(fā)的設計 模式,m v c 由t r y g v er e e n s k a u g 提出,是x e r o xp a r c 在2 0 世紀8 0 年代為 編程語言s m a l l t a l k - 8 0 發(fā)明的一種軟件設計模式n 鍆,即把一個應用的輸入、處 理、輸出流程分成三個層:m o d e l ( 模型層) 、v i e w ( 視圖層) 、c o n t r o l l e r ( 控制 層) 。 視圖( v i e w ) 天津大學碩士學位論文第二章在線考試系統實現所需相關技術綜述 視圖是用戶看到并與之交互的界面妲1 。一個應用可能有很多不同的視圖, g q c 設計模式對于視圖的處理僅限于視圖上數據的采集和處理,視圖向用戶展示用戶 感興趣的業(yè)務數據,并能接收用戶的輸入數據,但是視圖并不進行任何實際的業(yè) 務處理,業(yè)務的處理交給模型( m o d e l ) 處理口3 。視圖接收模型發(fā)出的業(yè)務數據更 新事件,在模型層變化的時候,它將對用戶晃面進行同步更新阱1 4 朝。 控制( c o n t r o l l e r ) 控制層凹3 并不做任何的數據處理,是一個分發(fā)器,掌握程序的流程控制,是使 模型和視圖協調工作的部件??刂茖咏邮苷埱蠛螅⒉惶幚順I(yè)務信息,它只把用 戶的信息傳遞給模型,告訴模型做什么,選擇符合要求的視圖返回給用戶,將模 型與視圖匹配在一起,共同完成用戶的請求,即分派用戶的請求并選擇恰當的視 圖以用于顯示,同時解釋用戶的輸入并將它們映射為模型層可執(zhí)行的操作。 模型( m o d e l ) 模型是應用程序的主體部分,負責表達和訪問商業(yè)數據、執(zhí)行商業(yè)邏輯和操 作、接受視圖請求的數據,并將最終的處理結果返回視圖髓副。業(yè)務模型的設計是 m v c 最主要的核心,業(yè)務模型中有一個很重要的模型那就是數據模型,數據模型 主要指實體對象的數據保存,即有關數據庫的操作由模型完成。 塒c 的優(yōu)點n 4 1 嘲是程序代碼的可重用性和低耦合性。由于m v c 的3 個模塊 相互獨立,改變其中一個不會影響其他兩個,模型與控制器和視圖保持相對獨立, 因此可以方便地改變應用程序的業(yè)務數據和業(yè)務規(guī)則,所以依據這種設計思想能 構造良好的低耦合組件。模型響應用戶請求并返回響應數據;視圖負責格式化數 據并把它們呈現給用戶,業(yè)務邏輯和數據表示分離,多個視圖能共享一個模型, 圖2 - 4m v c 模式功能示意圖 同一個模型可以被不同的視圖重用,所以大大提高了模型層的程序代碼的可重用 性。模型、視圖與控制器的分離,使得一個模型可以具有多個顯示視圖,如果用 戶通過某個視圖的控制器改變了模型的數據,所有其它依賴于這些數據的視圖都 應反映到這些變化,無論何時發(fā)生了何種數據變化,控制器都會將變化通知所有 天津大學碩士學位論文 第二章在線考試系統實現所需相關技術綜述 的視圖,導致顯示的更新。因為模型是獨立于視圖的,所以可以把一個模型獨立 地移植到新的平臺工作,需要做的只是在新平臺上對視圖和控制器進行新的修 改。對于開發(fā)存在大量用戶界面,并且業(yè)務邏輯復雜的大型應用程序,m v c 將會 使軟件在健壯性、代碼重用和結構方面上一個新的臺階。盡管在最初構建m ,c 框 架時會花費一定的工作量,但從長遠角度看,它會大大提高后期軟件開發(fā)的效率。 m v c 模式功能示意圖如圖2 4 所示。 2 3s t r u t s 框架 圖2 - 5 s t r u t s 的體系結構圖 s t r u t s 洶】【旬是a p a c h e 軟件基金下j a k a r t a 項目的組成部分,是一個為 開發(fā)基于m v c 模式的應用架構的開源框架,利用j a v as e r v l e t 和j s p 構建w e b 應用。s t r u t s 很好的結合了j s p ,j a v as e r v l e t ,j a v a b e a n ,t a g l i b 等技術, 實現了m v c 模式的業(yè)務代碼與視圖代碼分離,能有效地表達系統設計架構,降低 系統復雜度與維護難度,減弱業(yè)務邏輯界面和資料界面之間的偶合,讓視圖層更 富于變化。通過使用s t r u t s 框架可以改進和提高j a v as e r v e rp a g e 、s e r v l e t 、 標簽庫在w e b 應用程序中的應用,減少應用于m y c 設計模式的開發(fā)時間,從而 提高開發(fā)效率建立更好的網絡應用。 天津大學碩士學位論文 第二章在線考試系統實現所需相關技術綜述 s t r u t s 是實現m v c 模式的通用框架,它由四個主要部分組成:模型、視圖、 控制器和煳l 文件。 控制器h 1 在s t r u t s 中a c t i o n s e r v l e t 是s t r u t s 的核心部件啦! ,它是一個 s e r v l e t ,承擔m v c 中c o n t r o l l e r 角色,起著主控制器的作用,接受用戶的 h t t p 請求,根據配置信息將請求轉發(fā)給適當的動作類a c t i o n 對象。a c t i o n 組 件充當用戶請求和業(yè)務邏輯處理之間的適配器( a d a p t o r ) ,采用調用模型的方法 處理具體的業(yè)務,控制應用程序的流程,其功能就是將請求與業(yè)務邏輯分開,側 重于控制應用程序的流程,而不是實現應用程序的邏輯。a c t i o n 根據用戶請求 調用相關的業(yè)務邏輯組件,業(yè)務邏輯由j a v ab e a n 或e j b 來完成。通過將業(yè)務 邏輯放在單獨的j a v a 包或e j b 中,可以提高應用程序的靈活性和可重用性。 當a c t i o n s e r v l e t 控制器收到用戶請求后,把請求轉發(fā)到一個a c t i o n 實例,如 果這個實例不存在,控制器會首先創(chuàng)建它,然后調用這個a c t i o n 實例的 e x e c u t e ( ) 方法。a c t i o n 的e x e c u t e0 返回a c t i o n f o r w a r d 對象,它封裝了把 用戶請求再轉發(fā)給其它w e b 組件的信息。所有這些控制邏輯利用 s t r u t s - c o n f i g x m l 文件來配置乜7 3 。 x m l 文件 s t r u t s 包括w e b x m l 和s t r u t s c o n f i g x m l 兩個配置文件,其中w e b x m l 是w e b 應用的發(fā)布描述文件,s t r u t s m c o n f i g x m l 是與s t r u t s 相關的特殊信 息配置的描述文件。s t r u t s 的核心是a c t i o n s e v l e t ,a c t i o n s e v l e t 的核心是 s t r u t s - c o n f i g x m l 。用戶請求是通過a c t i o n s e r v l e t 來處理和轉發(fā)的, a c t i o n s e r v l e t 需要存儲在s t r u t s c o n f i g x m l 中的描述用戶請求路徑和 a c t i o n 映像關系的配置信息來決定把用戶請求轉發(fā)給哪個a c t i o n 對象。在配置 文件s t r u t s - c o n f i g x m l 中,每一個a c t i o n 的映射信息都通過一個 元素來配置。這些配置信息在系統啟動的時候被讀入內存,供s t r u t s 在運行期 間使用。在s t r u t s 中,用戶的請求一般以木d o 作為請求服務名,所有的術d o 請 求均被指向a c t i o n s e v l e t ,a c t i o n s e v l e t 根據s t r u t s c o n f i g x m l 中的配置信 息,將用戶請求封裝成一個指定名稱的f o r m b e a n ,并將此f o r m b e a n 傳至指定名 稱的a c t i o n b e a n ,由a c t i o n b e a n 完成相應的業(yè)務操作,如文件操作,數據庫操 作等。每一個木d o 均有對應的f o r m b e a n 名稱和a c t i o n b e a n 名稱。 模型 模型哺1 通常由一個或多個j a v ab e a n 的形式存在啪羽,負責處理業(yè)務邏輯。 這些b e a n 分為三類:a c t i o nf o r m 、a c t i o n 、j a v a b e a n ,a c t i o nf o r m 邐i 常稱之為 f o r m b e a n ,封裝了來自于用戶的請求信息;a c t i o n 通常稱之為a c t i o n b e a n ,獲取 天津大學碩士學位論文第二章在線考試系統實現所需相關技術綜述 從a c t i o n s e v l e t 傳來的f o r m b e a n ,取出f o r m b e a n 中的相關信息,并做出相關的處 理,一般是調用j a v ab e a n ;j a v ab e a n 進行業(yè)務邏輯處理。 視圖 視圖:主要是由j s p 來控制頁面輸出的啪1 ,它接收到a c t i o nf o r m 中的數 據,利用s t r u t s 提供豐富的j s p 標簽庫:h t m l ,b e a n ,l o g i c ,t e m p l a t e 等 顯示資料。在j s p 文件中沒有業(yè)務邏輯,也沒有模型信息,只有標簽,這有利于 分開表現邏輯和程序邏輯,簡化了j s p 頁面的編碼工作。通常把s t r u t s 框架 中的a c t i o n f o r m b e a n 也劃分到視圖模塊中,a c t i o n f o r m b e a n 也是一種j a v a b e a n ,除了具有一些j a v ab e a n 的常規(guī)方法外,還包含一些特殊的方法,用于 驗證h t m l 表單數據以及將屬性重新設置為默認值。s t r u t s 利用 a c t i o n f o r m b e a n 進行視圖和控制之間表單數據的傳遞。s t r u t s 框架把用戶輸入 的表單數據保存在a c t i o n f o r m b e a n 中,把它傳遞給控制器,控制器可以對 a c t i o n f o r m b e a n 中的數據進行修改,j s p 文件使用s t r u t s 標簽讀取修改后的 a c t i o n f o r m b e a n 信息,重新設置h t m l 表單。s t r u t s 的體系結構如圖2 5 所示。 天津大學碩士學位論文第三章在線考試系統可行性與需求分析 第三章在線考試系統可行性與需求分析 3 1 在線考試系統需求分析 3 1 1 在線考試系統的功能需求分析 要實現一個軟件系統,首先應該進行功能需求分析,系統功能需求分析的基 本任務是準確地回答“系統必須作什么這個問題。它的任務是確定系統必須完 成哪些工作,也就是對目標提出完整、準確、清晰、具體的要求。下面就對在線 考試系統的設計進行需求分析: 網上考試系統要具有一定的保密性和良好的人機界面、符合現有的考試流 程。不同身份的用戶,經過系統身份驗后進入系統的不同功能區(qū)域,本系統的用 戶分為系統管理員、教師和考生三類: 學生 學生用戶擁有在瀏覽器端進行網上考試,成績查詢等功能。對于考生而言應 具有選擇考試科目的權限;為保證數據的安全性,防止試卷失密,防止考試時作 弊現象的發(fā)生,試題應該是實時由計算機自動隨機組卷,但為保證考試的公平與 公正,每個應試者的試卷的題型、題量和難度都應是相同的,但試題并不相同; 另外,系統還應該對考試時間進行控制,考生可以自己選擇交卷,也可在考試結 束時間到達后由系統強制交卷;在線考試時,若出現斷電等意外,系統要給出妥 善的安置。 教師 教師主要負責題庫管理、試卷管理、主觀題的閱卷、成績管理等,具有在瀏 覽器端進行考試試題的添加、修改、刪除等操作。試題要支持不同的題型,不只 有客觀題,還有主觀題,要能囊括各科組卷時所要求的試題類型。在考試之前, 教師設定考試相關參數。學生考試結束后,由教師對學生試卷進行評分,客觀題 由系統自動評分;主觀題,由系統給出標準答案及分值,由教師評分;閱卷標準 的嚴格統一,使考試更加公正合理,具有權威性。 系統管理員 系統管理員主要負責系統維護、用戶管理及考試的監(jiān)控工作,具有用戶注冊 及修改用戶的信息的權限。實現用戶遠程注冊,用戶輸入想要注冊的用戶名和密 碼,提交之后由系統判斷該用戶是否已經存在,如果存在,就給出相應信息,如 天津大學碩士學位論文第三章在線考試系統可行性與需求分析 果不存在,就把用戶輸入的用戶名和密碼寫到數據庫中,完成注冊。用戶在注冊 成功后可以登錄系統。管理員可以增刪用戶,以便維護考生的信息,防止非授權 用戶登錄,同時也可以通過考生填寫報名表的方式,統一輸入用戶信息。 經過對實際考試業(yè)務過程的分析,最終提煉出如下的業(yè)務邏輯模型,系統分 前臺和后臺兩個部分進行設計:前臺主要用于考生注冊和登錄系統、在線考試、 查詢成績以及修改個人資料等;后臺主要用于系統管理員和教師對系統屬性、考 生信息、課程信息、題庫內容和考生成績等進行管理。不需安裝客戶端,被授權 用戶通過瀏覽器即可登錄系統。具體而言本系統需要完成的功能模塊包括:系統 管理、題庫管理、試卷管理、在線考試、試卷評閱、統計分析和信息查詢與修改 七個模塊。 系統管理。系統管理員具有系統管理的權限,系統管理主要由用戶管理、 系統設置、考試監(jiān)控幾個部分組成。 題庫管理。課程負責教師只具有本科目的試題管理權限,試題管理主要 由試題添加和試題維護構成。 試卷管理

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論