版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
蘭州工業(yè)學(xué)院畢業(yè)設(shè)計(jì)說(shuō)明書(shū)(論文)蘭州工業(yè)學(xué)院畢業(yè)設(shè)計(jì)題目在線考試系統(tǒng)專(zhuān)業(yè)計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)班級(jí)計(jì)網(wǎng)11學(xué)生王康龍學(xué)號(hào)201103101136指導(dǎo)教師王軍弟摘要考試是教學(xué)過(guò)程中不可或缺的一個(gè)環(huán)節(jié),是一種嚴(yán)格的知識(shí)水平鑒定方法,也是促進(jìn)學(xué)生學(xué)習(xí)的重要手段。傳統(tǒng)的考試方法要求組織者提前命題試卷,然后約定一個(gè)統(tǒng)一時(shí)間,讓所有考生到考場(chǎng)里進(jìn)行考試。在網(wǎng)絡(luò)技術(shù)逐漸滲入社會(huì)生活各個(gè)層面的今天,傳統(tǒng)的考試方式也面臨著變革,而網(wǎng)絡(luò)考試則是一個(gè)很重要的方向,省去傳統(tǒng)考試的復(fù)雜的形式,考試變的更方便,節(jié)省人力物力。本次畢業(yè)設(shè)計(jì)的題目是在線模擬考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),系統(tǒng)采用瀏覽器/服務(wù)器即B/S結(jié)構(gòu)(Browser/Server結(jié)構(gòu))開(kāi)發(fā)模式開(kāi)發(fā),包括登錄注冊(cè)、在線考試、試卷設(shè)置、試題管理、分?jǐn)?shù)的統(tǒng)計(jì)以及成績(jī)查詢(xún)等功能。系統(tǒng)運(yùn)行在Windows7操作系統(tǒng)上,以Tomcat作為Web服務(wù)器,使用JSP技術(shù)和MySQL數(shù)據(jù)庫(kù)實(shí)現(xiàn)。通過(guò)論文的研究,滿(mǎn)足了目前考試的實(shí)際需要。實(shí)際應(yīng)用表明:由于該考試軟件系統(tǒng)省去了傳統(tǒng)考試中的考前命題,印制試卷,試后組織閱卷,成績(jī)統(tǒng)計(jì)等人工環(huán)節(jié),大幅降低了考試成本和保密工作的難度,提高了考試工作的組織效率,也有效地避免了考生的作弊現(xiàn)象,取得了良好的考試效果。關(guān)鍵詞:JSP;MVC;在線考試系統(tǒng);MySQL;B/SABSTRACTExaminationisanindispensablelinkintheteachingprocess,arigorousidentificationofthelevelofknowledge,isalsoanimportantmeanstopromotestudentlearning.Thetraditionaltestmethodrequiresthattheorganizeradvancethepropositionpapers,andthenagreeduponauniformtimeforallcandidatestotheexamination,examination.Networktechnologyisgraduallyinfiltratedintoalllevelsofsociallife,thetraditionalexamalsofacedwithchangesinthenetworktestisaveryimportantdirection,eliminatingthetraditionalexaminationofthecomplexformofexaminationmoreconvenient,saveresources.Thegraduationproject’ssubjectistodesignandrealizationoftheonlineexaminationsystem.Thesystemusesthebrowser/servertodevelop.Itincludeslogin,newuserregistration,on-lineexamination,examinationpaperset,examinationpapermanagement,scorestatistics,queryresultsandotherfunctional.ThesystemtakestheWindows7astheOS,TomcatasthewebServer,usesJSPtechnologyandMySQLastheDatabaseServerdevelopmenttoolstorealizethesystem.Throughtheresearchonthepaper,thissoftwaresystemcanmeettherequirementforcurrentexamination.ltshowsthattheexaminationcostandsecuritydifficultyaredecreasedandorganizationefficiencyisincreasedbecausethemanualworkwhichlinkssuchaspropositionbeforeexamination,testpaperprint,testpaperreadafterexaminationandgradestatisticintraditionalexaminationareomitinsoftware.lteffectivelyavoidsthecheatphenomenainexaminationandgetswellexaminationresult.Keywords: JSP;MVC;Onlinetestingsystem;MySQL;B/S
目錄摘要 =2\*ROMANIIABSTRACT =3\*ROMANIII1.緒論 51.1在線考試系統(tǒng)開(kāi)發(fā)的背景及意義 51.2在線考試系統(tǒng)來(lái)發(fā)的現(xiàn)狀及分析 61.3本論文的研究?jī)?nèi)容 62.在線考試系統(tǒng)的相關(guān)知識(shí)及技術(shù) 82.1.1JSP技術(shù) 82.1.2MVC模式 92.1.3MySQL 102.1.4Tomeat服務(wù)器 112.1.5B/S模式 122.1.6Struts框架概述 133.在線考試系統(tǒng)的需求分析 153.1基本需求分析 153.2用戶(hù)界面需求 163.3系統(tǒng)安全需求 163.4在線考試系統(tǒng)的業(yè)務(wù)需求分析 173.4.1學(xué)生業(yè)務(wù)需求分析 173.4.2教師用戶(hù)需求分析 184.在線考試系統(tǒng)的總體功能設(shè)計(jì) 204.1試題設(shè)計(jì) 214.2系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì) 214.3系統(tǒng)的邏輯關(guān)系設(shè)計(jì) 254.4在線考試系統(tǒng)考試模塊框圖 285.在線系統(tǒng)的實(shí)現(xiàn) 295.1系統(tǒng)界面設(shè)計(jì) 295.2自動(dòng)生成試卷的實(shí)現(xiàn) 305.3閱卷功能的實(shí)現(xiàn)簡(jiǎn)介 336.在線考試系統(tǒng)的測(cè)試 346.1什么是軟件測(cè)試 346.2軟件測(cè)試的目標(biāo)與方法 346.3測(cè)試內(nèi)容 35總結(jié)和展望 36致謝 37參考文獻(xiàn) 38
1.緒論1.1在線考試系統(tǒng)開(kāi)發(fā)的背景及意義隨著網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,現(xiàn)在很多國(guó)外的大學(xué)和社會(huì)其他部門(mén)都已經(jīng)開(kāi)設(shè)了遠(yuǎn)程教育,通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)實(shí)現(xiàn)異地教育和培訓(xùn)?,F(xiàn)在,計(jì)算機(jī)硬件技術(shù)的發(fā)展已經(jīng)達(dá)到了相當(dāng)高的水平。但是,遠(yuǎn)程教育軟件的開(kāi)發(fā)目前還處于起步階段,隨著這項(xiàng)技術(shù)的不斷深入發(fā)展,就要求有更好、更完善的軟件系統(tǒng)應(yīng)用到遠(yuǎn)程教育當(dāng)中去,這就給軟件設(shè)計(jì)人員提出了更高的設(shè)計(jì)要求。例如教學(xué)系統(tǒng)、答疑系統(tǒng)和考試系統(tǒng)等等。其中很重要的一個(gè)環(huán)節(jié)就是在線考試系統(tǒng),同時(shí)它也是最難實(shí)現(xiàn)的環(huán)節(jié)。在我國(guó),雖然遠(yuǎn)程教育已經(jīng)蓬勃地發(fā)展起來(lái),但是目前學(xué)校與社會(huì)上的各種考試大都采用傳統(tǒng)的考試方式,在此方式下,組織一次考試至少要經(jīng)過(guò)五個(gè)步驟,即人工出題、考生考試、人工閱卷、成績(jī)?cè)u(píng)估和試卷分析。顯然,隨著考試類(lèi)型的不斷增加及考試要求的不斷提高,教師的工作量將會(huì)越來(lái)越大,并且其工作將是一件十分煩瑣和非常容易出錯(cuò)的事情,可以說(shuō)傳統(tǒng)的考試方式已經(jīng)不能適應(yīng)現(xiàn)代考試的需要。隨著計(jì)算機(jī)應(yīng)用的迅猛發(fā)展,網(wǎng)絡(luò)應(yīng)用不斷擴(kuò)大,如遠(yuǎn)程教育和虛擬大學(xué)的出現(xiàn)等等,且這些應(yīng)用正逐步深入到千家萬(wàn)戶(hù)。人們迫切要求利用這些技術(shù)來(lái)進(jìn)行在線考試,以減輕教師的工作負(fù)擔(dān)及提高工作效率,與此同時(shí)也提高了考試的質(zhì)量,從而使考試更趨于公證、客觀,更加激發(fā)學(xué)生的學(xué)習(xí)興趣。例如目前許多國(guó)際著名的計(jì)算機(jī)公司所舉辦的各種認(rèn)證考試絕大部分采用這種方式。在線考試是現(xiàn)階段研究開(kāi)發(fā)的一個(gè)熱點(diǎn)。它是建立在國(guó)際互聯(lián)網(wǎng)上的應(yīng)用系統(tǒng),客戶(hù)端的配置可以極為簡(jiǎn)單,使考試不受地域的局限。一個(gè)完備的在線考試系統(tǒng)可以使用戶(hù)在網(wǎng)上學(xué)習(xí)過(guò)后及時(shí)檢驗(yàn)自己的學(xué)習(xí)效果,已發(fā)現(xiàn)自己的不足,使得學(xué)習(xí)效率得到很大提高。在線考試系統(tǒng)中題目的生成、試卷的提交、成績(jī)的批閱等都可以在網(wǎng)絡(luò)上自動(dòng)完成。只要形成一套成熟的題庫(kù)就可以實(shí)現(xiàn)考試的自動(dòng)化。這樣一來(lái),教師所要做的只是精心設(shè)計(jì)題目、維護(hù)題庫(kù),而不是組織考試,從而大大減輕了教師的負(fù)擔(dān),這表明其經(jīng)濟(jì)性是相當(dāng)可觀的。為了適應(yīng)新形勢(shì)的發(fā)展,我進(jìn)行了這一系統(tǒng)的初步設(shè)計(jì)工作,也可以說(shuō)是做一個(gè)初步的探索,希望它能夠在各類(lèi)考試中發(fā)揮高效、便捷的作用,把老師從繁重的工作中解脫出來(lái)!1.2在線考試系統(tǒng)來(lái)發(fā)的現(xiàn)狀及分析目前,網(wǎng)絡(luò)應(yīng)用軟件運(yùn)行的模式主要有二類(lèi):Client/server模式,Browser/Web模式。前者主要的缺點(diǎn)是維護(hù)、升級(jí)較麻煩,后者是近幾年伴隨Internet迅速發(fā)展起來(lái)的一種技術(shù),它與客戶(hù)/服務(wù)器方式類(lèi)似,客戶(hù)端是一個(gè)標(biāo)準(zhǔn)的瀏覽器,服務(wù)器端是WebServer,而WebServer與數(shù)據(jù)庫(kù)和應(yīng)用服務(wù)器的緊密結(jié)合,使得這種模式的應(yīng)用范圍不斷擴(kuò)大,它已不僅僅用于網(wǎng)上查詢(xún),有很多部門(mén)的業(yè)務(wù)系統(tǒng)、企業(yè)的MIS系統(tǒng)紛紛采用這種模式,它的主要優(yōu)點(diǎn)是便于擴(kuò)充應(yīng)用、升級(jí)維護(hù)簡(jiǎn)便。另外,考試系統(tǒng)的軟件也必將不斷的更新;同時(shí)軟件產(chǎn)品本身就要經(jīng)過(guò)一個(gè)不斷自我完善的過(guò)程?;谏鲜隹紤],用Browser/Web模式來(lái)設(shè)計(jì)考試系統(tǒng)比較合適,服務(wù)器端我們采用MYSQL數(shù)據(jù)庫(kù)系統(tǒng)和JSP組件來(lái)構(gòu)成考試的應(yīng)用服務(wù)系統(tǒng);客戶(hù)端采用瀏覽器來(lái)完成考試全過(guò)程,同時(shí)可進(jìn)行遠(yuǎn)程系統(tǒng)維護(hù)和管理。利用網(wǎng)絡(luò)和數(shù)據(jù)庫(kù)技術(shù),結(jié)合目前硬件價(jià)格普遍下跌與寬帶網(wǎng)大力建設(shè)的有利優(yōu)勢(shì),應(yīng)用JAVSServerPage技術(shù),我開(kāi)發(fā)了基于B/S模式多用戶(hù)在線考試系統(tǒng)這一程序。它運(yùn)用方便、操作簡(jiǎn)單,效率很高(同時(shí),它要求計(jì)算機(jī)配置也很高,尤其是服務(wù)器端)?,F(xiàn)階段雖只實(shí)現(xiàn)了試卷的客觀題部分,但已具有用戶(hù)注冊(cè)、用戶(hù)個(gè)人信息修改、多用戶(hù)同時(shí)在線考試、動(dòng)態(tài)隨機(jī)出題、時(shí)間控制、自動(dòng)判卷,試題錄入、修改題庫(kù)、用戶(hù)管理、試卷管理、分?jǐn)?shù)管理等重要功能,也就是說(shuō)實(shí)現(xiàn)了真正的無(wú)紙化考試,滿(mǎn)足任何授權(quán)的考生隨時(shí)隨地考試并迅速獲得成績(jī),同時(shí)也大大減輕了教師出題、出題和判卷等繁重的工作量。1.3本論文的研究?jī)?nèi)容通過(guò)該在線考試系統(tǒng)可以在任意指定地點(diǎn)借助于網(wǎng)絡(luò)進(jìn)行無(wú)紙化考試。該軟件系統(tǒng)目前實(shí)現(xiàn)了“在線考試”、“考生管理”、“題庫(kù)管理”、“試卷管理”、“在線組卷”、“在線閱卷”、“成績(jī)查詢(xún)”等功能。本文的研究目標(biāo)主要是針對(duì)大專(zhuān)院校教學(xué)考試中存在的學(xué)生人數(shù)眾多,組卷、考試、閱卷、試卷成績(jī)匯總效率低等因素,從網(wǎng)絡(luò)技術(shù)與現(xiàn)行的考試制度的改革角度,探討并實(shí)現(xiàn)了在線考試系統(tǒng)的解決方案。旨在利用現(xiàn)代教育技術(shù)和信息技術(shù)來(lái)構(gòu)建基于B/S結(jié)構(gòu)的在線考試系統(tǒng),提高考試效率和質(zhì)量。本文主要探討基于B/S結(jié)構(gòu)的在線考試系統(tǒng)的技術(shù)實(shí)現(xiàn)方案,立足于運(yùn)用先進(jìn)的計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)進(jìn)行系統(tǒng)的構(gòu)建,主要包括教師管理、在線考試、考生管理、試題管理、試卷管理、在線組卷、在線閱卷、成績(jī)查詢(xún)等功能的設(shè)計(jì)與實(shí)現(xiàn)。主要解決的問(wèn)題如下:一、解決了題庫(kù)與試題數(shù)據(jù)在線管理的問(wèn)題題庫(kù)、試題眾多,使得管理效率低下,試題數(shù)據(jù)陳舊、更新緩慢不能適應(yīng)學(xué)科的發(fā)展要求。管理員可以通過(guò)網(wǎng)絡(luò)進(jìn)行題庫(kù)和試題數(shù)據(jù)的更新維護(hù)更加方便快捷。二、解決了在線組卷的問(wèn)題授課教師根據(jù)擬定的考核目標(biāo),從題庫(kù)中在線選取難度比例適中的試題入卷,形成課程考試和的樣卷。這樣的處理提高了題庫(kù)試題數(shù)據(jù)的利用率,使得出卷變得簡(jiǎn)單高效。三、解決了在線考試的問(wèn)題合法的考試用戶(hù),通過(guò)驗(yàn)證后即可進(jìn)行在線考試。四、解決了在線閱卷的問(wèn)題對(duì)于考生提交的試題答案,客觀題部分由系統(tǒng)自動(dòng)閱卷,主觀題部分由教師手工閱卷。在教師提交閱卷成績(jī)后系統(tǒng)自動(dòng)進(jìn)行統(tǒng)計(jì)處理。本文研究和上述問(wèn)題都是針對(duì)現(xiàn)代教學(xué)中在線考試方面需要解決的問(wèn)題而展開(kāi)的,具有一定的前瞻性和創(chuàng)新性。
2.在線考試系統(tǒng)的相關(guān)知識(shí)及技術(shù)2.1.1JSP技術(shù)JSP的全稱(chēng)是JavaServerPages,是由SunMicrosystems公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。該技術(shù)為創(chuàng)建顯示動(dòng)態(tài)生成內(nèi)容的Web頁(yè)面提供了一個(gè)簡(jiǎn)捷而快速的方法。JSP技術(shù)的設(shè)計(jì)目的是使得構(gòu)造基于Web的應(yīng)用程序更加容易和快捷,而這些應(yīng)用程序能夠與各種Web服務(wù)器,應(yīng)用服務(wù)器,瀏覽器和開(kāi)發(fā)工具共同工作。JSP規(guī)范是Web服務(wù)器、應(yīng)用服務(wù)器、交易系統(tǒng)、以及開(kāi)發(fā)工具供應(yīng)商間廣泛合作的結(jié)果。在傳統(tǒng)的網(wǎng)頁(yè)HTML文件(*.htm,*.HTML)中加入Java程序片段(Scriptlet)和JSP標(biāo)記(tag),就構(gòu)成了JSP網(wǎng)頁(yè)(*.jsp)。Web服務(wù)器在遇到訪問(wèn)JSP網(wǎng)頁(yè)的請(qǐng)求時(shí),首先執(zhí)行其中的程序片段,然后將執(zhí)行結(jié)果以HTML格式返回給客戶(hù)。程序片段可以操作數(shù)據(jù)庫(kù)、重新定向網(wǎng)頁(yè)以及發(fā)送E-mail等等,這就是建立動(dòng)態(tài)網(wǎng)站所需要的功JSP的全稱(chēng)是JavaServerPages,是由SunMicrosystems公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。該技術(shù)為創(chuàng)建顯示動(dòng)態(tài)生成內(nèi)容的Web頁(yè)面提供了一個(gè)簡(jiǎn)捷而快速的方法。JSP技術(shù)的設(shè)計(jì)目的是使得構(gòu)造基于Web的應(yīng)用程序更加容易和快捷,而這些應(yīng)用程序能夠與各種Web服務(wù)器,應(yīng)用服務(wù)器,瀏覽器和開(kāi)發(fā)工具共同工作。JSP規(guī)范是Web服務(wù)器、應(yīng)用服務(wù)器、交易系統(tǒng)、以及開(kāi)發(fā)工具供應(yīng)商間廣泛合作的結(jié)果。在傳統(tǒng)的網(wǎng)頁(yè)HTML文件(*.htm,*.HTML)中加入Java程序片段(Scriptlet)和JSP標(biāo)記(tag),就構(gòu)成了JSP網(wǎng)頁(yè)(*.jsp)。Web服務(wù)器在遇到訪問(wèn)JSP網(wǎng)頁(yè)的請(qǐng)求時(shí),首先執(zhí)行其中的程序片段,然后將執(zhí)行結(jié)果以HTML格式返回給客戶(hù)。程序片段可以操作數(shù)據(jù)庫(kù)、重新定向網(wǎng)頁(yè)以及發(fā)送E-mail等等,這就是建立動(dòng)態(tài)網(wǎng)站所需要的功能。所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶(hù)端的僅是得到的結(jié)果,對(duì)客戶(hù)瀏覽器的要求最低,可以實(shí)現(xiàn)無(wú)Plugin,無(wú)ActiveX,無(wú)JavaApplet,甚至無(wú)Frame。JSP技術(shù)在多個(gè)方面加速了動(dòng)態(tài)Web頁(yè)面的開(kāi)發(fā):①將內(nèi)容的生成和顯示進(jìn)行分離②強(qiáng)調(diào)可重用的組件③采用標(biāo)識(shí)簡(jiǎn)化頁(yè)面開(kāi)發(fā)2.1.2MVC模式軟件應(yīng)用系統(tǒng)大部分可抽象為輸入、處理和輸出三個(gè)部分。在軟件發(fā)過(guò)程中,由于需求變更導(dǎo)致的任何一部分變化,都可能引起其它部分的變化,各部分之間的親合度,決定了變化的相對(duì)強(qiáng)弱,變化越少越有利于開(kāi)發(fā)。因此,在軟件開(kāi)發(fā)過(guò)程中,降低各部分之間的稱(chēng)合度是十分重要的。MVC是一種設(shè)計(jì)模式,對(duì)三部分進(jìn)行了很好的分離,它將應(yīng)用細(xì)分為模型層、視圖層和控制層三個(gè)層次,很好地降低了系統(tǒng)各部分之間的稱(chēng)合度,使系統(tǒng)在需求變更時(shí),減少相應(yīng)的變化,提高軟件開(kāi)發(fā)的效率,同時(shí)系統(tǒng)也更加易于擴(kuò)展。M(Model),即模型,主要負(fù)責(zé)業(yè)務(wù)數(shù)據(jù)邏輯處理及業(yè)務(wù)規(guī)則制定。在MVC模式中,業(yè)務(wù)模型的設(shè)計(jì)處于核心位置,數(shù)據(jù)模型在業(yè)務(wù)模型中更是占有著重要的地位。數(shù)據(jù)模型就是對(duì)實(shí)體對(duì)象的數(shù)據(jù)保存,也可以理解為實(shí)體對(duì)象的持久化。在日常的JAVA項(xiàng)目開(kāi)發(fā)中,POJO(PlainOldJavaObjects),即簡(jiǎn)單的Java對(duì)象,可以被視為一個(gè)最簡(jiǎn)單的數(shù)據(jù)模型。V(View),即視圖,主要指用戶(hù)與系統(tǒng)進(jìn)行交互的界面,視圖可以接受用戶(hù)的請(qǐng)求,并向用戶(hù)展示返回的數(shù)據(jù)信息。在JAVAWeb應(yīng)用開(kāi)發(fā)中,可以使用HTML、JSP、XML等實(shí)現(xiàn)簡(jiǎn)單的視圖界面,也可以使用JSF、Stmts、WebVelocity、Tapestry等WEB表示層框架實(shí)現(xiàn)。C(Controller),即控制,主要負(fù)責(zé)通過(guò)視圖接受用戶(hù)的請(qǐng)求,調(diào)用相應(yīng)的模型進(jìn)行數(shù)據(jù)處理,并將結(jié)果返回給相應(yīng)視圖。在JAVA開(kāi)發(fā)中,可以用Servlet實(shí)現(xiàn)簡(jiǎn)單的控制,也可以使用目前主流的Spring框架實(shí)現(xiàn)。三個(gè)層次雖然在功能上各盡其職,但是對(duì)于一個(gè)復(fù)雜的應(yīng)用系統(tǒng),任何功能的實(shí)現(xiàn),都離不開(kāi)三者之間的緊密聯(lián)系與協(xié)作。三者的關(guān)系如圖2-1所示。模型模型狀態(tài)查詢(xún)狀態(tài)改變改變返回通知變更完成控制器視圖視圖選擇控制器視圖用戶(hù)請(qǐng)求方法調(diào)用事件圖2-1MVC模式各層次關(guān)系由圖2-1可知,視圖層在接收到用戶(hù)請(qǐng)求后,將請(qǐng)求傳遞給控制層,控制層在收到請(qǐng)求后,調(diào)用相應(yīng)的模型,進(jìn)行數(shù)據(jù)的邏輯處理和狀態(tài)變更,模型層在完成了業(yè)務(wù)處理后,會(huì)通知控制器變更完成,控制器在收到通知后,選擇相應(yīng)的視圖,視圖會(huì)調(diào)用特定的方法,查詢(xún)相應(yīng)的模型狀態(tài),模型將改變后的數(shù)據(jù)信息返回給視圖層,視圖層向用戶(hù)展示數(shù)據(jù)信息。舉個(gè)簡(jiǎn)單的例子,用戶(hù)在登錄某個(gè)系統(tǒng)時(shí),當(dāng)用戶(hù)填寫(xiě)完用戶(hù)名、密碼和驗(yàn)證碼后,點(diǎn)擊登錄按鈕,請(qǐng)求會(huì)傳遞給控制器,控制器調(diào)用相應(yīng)的數(shù)據(jù)模型,判斷用戶(hù)是否合法,并將驗(yàn)證信息通知給控制器,控制器收到通知后,若用戶(hù)信息合法,則選擇系統(tǒng)主頁(yè)面進(jìn)行展示,否則調(diào)用登錄頁(yè)面,頁(yè)面則調(diào)用指定方法,將特定的信息展示給用戶(hù)。2.1.3MySQLMySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),由瑞典MySQL
AB公司開(kāi)發(fā),目前屬于Oracle公司。MySQL是一種關(guān)聯(lián)數(shù)據(jù)庫(kù)管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫(kù)將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉(cāng)庫(kù)內(nèi),這樣就增加了速度并提高了靈活性。MySQL所使用的SQL語(yǔ)言是用于訪問(wèn)數(shù)據(jù)庫(kù)的最常用標(biāo)準(zhǔn)化語(yǔ)言。MySQL軟件采用了雙授權(quán)政策(本詞條“授權(quán)政策”),它分為社區(qū)版和商業(yè)版,由于其體積小、速度快、總體擁有成本低,尤其是開(kāi)放源碼這一特點(diǎn),一般中小型網(wǎng)站的開(kāi)發(fā)都選擇MySQL作為網(wǎng)站數(shù)據(jù)庫(kù)。由于其社區(qū)版的性能卓越,搭配PHP和Apache可組成良好的開(kāi)發(fā)環(huán)境。2.1.4Tomeat服務(wù)器Tomcat服務(wù)器是一個(gè)免費(fèi)的開(kāi)放源代碼的Web應(yīng)用服務(wù)器,目前最新版本是6.0.14。Tomcat是一個(gè)免費(fèi)的開(kāi)源的Serlvet容器,在Tomcat中,應(yīng)用程序的部署很簡(jiǎn)單,你只需將你的WAR放到Tomcat的webapp目錄下,Tomcat會(huì)自動(dòng)檢測(cè)到這個(gè)文件,并將其解壓。你在瀏覽器中訪問(wèn)這個(gè)應(yīng)用的JSP時(shí),通常第一次會(huì)很慢,因?yàn)門(mén)omcat要將JSP轉(zhuǎn)化為Servlet文件,然后編譯。編譯以后,訪問(wèn)將會(huì)很快。另外Tomcat也提供了一個(gè)應(yīng)用:manager,訪問(wèn)這個(gè)應(yīng)用需要用戶(hù)名和密碼,用戶(hù)名和密碼存儲(chǔ)在一個(gè)xml文件中。通過(guò)這個(gè)應(yīng)用,輔助于FTP,你可以在遠(yuǎn)程通過(guò)Web部署和撤銷(xiāo)應(yīng)用。當(dāng)然本地也可以。Tomcat也具有傳統(tǒng)的Web服務(wù)器的功能:處理HTML頁(yè)面。但是與Apache相比,它的處理靜態(tài)HTML的能力就不如Apache。我們可以將Tomcat和Apache集成到一塊,讓Apache處理靜態(tài)HTML,而Tomcat處理JSP和Servlet。這種集成只需要修改一下Apache和Tomcat的配置文件即可。在Tomcat中,應(yīng)用程序的部署很簡(jiǎn)單,你只需將你的WAR放到Tomcat的webapp目錄下,Tomcat會(huì)自動(dòng)檢測(cè)到這個(gè)文件,并將其解壓。你在瀏覽器中訪問(wèn)這個(gè)應(yīng)用的JSP時(shí),通常第一次會(huì)很慢,因?yàn)門(mén)omcat要將JSP轉(zhuǎn)化為Servlet文件,然后編譯。編譯以后,訪問(wèn)將會(huì)很快。另外Tomcat也提供了一個(gè)應(yīng)用:Manager,訪問(wèn)這個(gè)應(yīng)用需要用戶(hù)名和密碼,用戶(hù)名和密碼存儲(chǔ)在一個(gè)xml文件中。通過(guò)這個(gè)應(yīng)用,輔助于FTP,你可以在遠(yuǎn)程通過(guò)Web部署和撤銷(xiāo)應(yīng)用,當(dāng)然本地也可以。Tomcat不僅僅是一個(gè)Servlet容器,它也具有傳統(tǒng)的Web服務(wù)器的功能:處理Html頁(yè)面。但是與Apache相比,它的處理靜態(tài)Html的能力就不如Apache.我們可以將Tomcat和Apache集成到一塊,讓Apache處理靜態(tài)Html,而Tomcat處理JSP和Servlet.這種集成只需要修改一下Apache和Tomcat的配置文件即可?;赥omcat的開(kāi)發(fā)其實(shí)主要是JSP和Servlet的開(kāi)發(fā),開(kāi)發(fā)JSP和Servlet非常簡(jiǎn)單,你可以用普通的文本編輯器或者IDE,然后將其打包成WAR即可。我們這里要提到另外一個(gè)工具Ant,Ant也是Jakarta中的一個(gè)子項(xiàng)目,它所實(shí)現(xiàn)的功能類(lèi)似于Unix中的make.你需要寫(xiě)一個(gè)build.xml文件,然后運(yùn)行Ant就可以完成xml文件中定義的工作,這個(gè)工具對(duì)于一個(gè)大的應(yīng)用來(lái)說(shuō)非常好,我們只需在xml中寫(xiě)很少的東西就可以將其編譯并打包成WAR。事實(shí)上,在很多應(yīng)用服務(wù)器的發(fā)布中都包含了Ant。另外,在JSP1.2中,可以利用標(biāo)簽庫(kù)實(shí)現(xiàn)Java代碼與Html文件的分離,使JSP的維護(hù)更方便。2.1.5B/S模式B/S(Browser/Server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶(hù)工作界面是通過(guò)WWW瀏覽器來(lái)實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實(shí)現(xiàn),形成所謂三層(3-tier)結(jié)構(gòu)。一個(gè)三層架構(gòu)的應(yīng)用程序由三部分組成,這三部分各自分布在網(wǎng)絡(luò)中的不同地方。這三個(gè)部分分別是:工作站或表示層接口、事務(wù)邏輯、數(shù)據(jù)庫(kù)以及與其相關(guān)的程序設(shè)計(jì)。在一個(gè)典型的三層架構(gòu)應(yīng)用程序中,應(yīng)用程序的用戶(hù)工作站包括提供圖形用戶(hù)界面(GUI)的程序設(shè)計(jì)和具體的應(yīng)用程序入口表格或交互式窗口。事務(wù)邏輯處在局域網(wǎng)(LAN)服務(wù)器或其他共享主機(jī)上,它作為響應(yīng)工作站所發(fā)出客戶(hù)請(qǐng)求的服務(wù)器,而相對(duì)于處于大型機(jī)的第三層它是作為客戶(hù)端,并且決定需要什么數(shù)據(jù)以及數(shù)據(jù)存儲(chǔ)在哪里。第三層包括數(shù)據(jù)庫(kù)以及處理讀寫(xiě)以及訪問(wèn)數(shù)據(jù)庫(kù)的程序。然而應(yīng)用程序的設(shè)計(jì)可能比這個(gè)架構(gòu)要復(fù)雜,對(duì)于大型程序來(lái)說(shuō),這個(gè)三層模式是一種比較簡(jiǎn)便的考慮方法。這種應(yīng)用程序的設(shè)計(jì)使用客戶(hù)/服務(wù)器模式,各層可以同時(shí)開(kāi)發(fā),并且可以由不同的成員組用不同的語(yǔ)言來(lái)開(kāi)發(fā)。因?yàn)楦鱾€(gè)層次的開(kāi)發(fā)不會(huì)影響其他層次,所以這種模型對(duì)于進(jìn)一步開(kāi)發(fā)軟件是很方便的。這樣就大大簡(jiǎn)化了客戶(hù)端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)的成本和工作量,降低了用戶(hù)的總體成本(TCO)。以目前的技術(shù)看,局域網(wǎng)建立B/S結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如LAN,WAN,Internet/Intranet等)訪問(wèn)和操作共同的數(shù)據(jù)庫(kù);它能有效地保護(hù)數(shù)據(jù)平臺(tái)和管理訪問(wèn)權(quán)限,服務(wù)器數(shù)據(jù)庫(kù)也很安全。特別是在Java這樣的跨平臺(tái)語(yǔ)言出現(xiàn)之后,B/S架構(gòu)管理軟件更是方便、快捷、高效。這種B/S模式客戶(hù)端只要安裝一個(gè)標(biāo)準(zhǔn)的Web瀏覽器,其它應(yīng)用程序都存儲(chǔ)在Web服務(wù)器上。建立在B/S模式上的在線考試系統(tǒng),可建立大型、高效、共享的題庫(kù),在服務(wù)器端對(duì)數(shù)據(jù)庫(kù)進(jìn)行管理,客戶(hù)端通過(guò)瀏覽器登錄考試系統(tǒng),打破了時(shí)空界限,可實(shí)現(xiàn)自動(dòng)出卷、閱卷、評(píng)卷、簡(jiǎn)化考試程序,且考試結(jié)果更加公正、客觀。采用B/S(Browser/Server)模式的計(jì)算機(jī)在線考試和管理系統(tǒng)適用于一個(gè)考場(chǎng)或幾十個(gè)考場(chǎng)、幾十人甚至幾萬(wàn)人同時(shí)通過(guò)網(wǎng)絡(luò)在線考試,解決了考試系統(tǒng)對(duì)客戶(hù)機(jī)軟件過(guò)分依賴(lài)的問(wèn)題,減輕了客戶(hù)機(jī)軟件維護(hù)工作量,比以往的考試系統(tǒng)更具有實(shí)用性。采用這種結(jié)構(gòu),考試系統(tǒng)安裝和試題裝卸的程序簡(jiǎn)易;進(jìn)行不同類(lèi)別試題的考試時(shí)僅需要在服務(wù)器上進(jìn)行試題的更換處理,對(duì)考場(chǎng)的計(jì)算機(jī)配置應(yīng)考專(zhuān)業(yè)的相應(yīng)軟件,考生就可以進(jìn)行考試。此技術(shù)超越了傳統(tǒng)的“客戶(hù)機(jī)/服務(wù)器”兩層結(jié)構(gòu),采用了三層體系結(jié)構(gòu):用戶(hù)界面層/事務(wù)層/數(shù)據(jù)庫(kù)層。因此Web結(jié)構(gòu)有著更好的安全性。在用戶(hù)機(jī)上不需要安裝任何應(yīng)用程序,應(yīng)用程序可以安裝在事務(wù)層所在的計(jì)算機(jī)上,試題存放在數(shù)據(jù)庫(kù)服務(wù)器上(事務(wù)層和數(shù)據(jù)庫(kù)可以是同一臺(tái)機(jī)器)2.1.6Struts框架概述現(xiàn)在有很多可供使用的MVC框架,由于Struts框架具有完整的文檔并且相對(duì)來(lái)講比較簡(jiǎn)單,所以用它開(kāi)發(fā)MVC系統(tǒng)還是比較方便的。Struts是基于JSPMode12之上的,它的底層機(jī)制就是MVC。Struts采用的是開(kāi)放式源代碼,它是作為apache軟件基金的Jakarta項(xiàng)目的一部分,旨在改進(jìn)和提高JSP、Servlet、標(biāo)記庫(kù)以及面向?qū)ο蟮募夹g(shù)水準(zhǔn),整合Servlets和JSP的技術(shù)優(yōu)勢(shì),為開(kāi)發(fā)人員提供一個(gè)開(kāi)發(fā)WEB應(yīng)用程序的框架。Struts是一組Java類(lèi)和JSP標(biāo)記庫(kù).在struts框架中,對(duì)模型、視圖和控制器都提供了現(xiàn)成的實(shí)現(xiàn)組件。模型由實(shí)現(xiàn)業(yè)務(wù)邏輯的JavaBean或EJB組件構(gòu)成,控制器由ActionServlet和Action來(lái)實(shí)現(xiàn),視圖由一組JSP文件構(gòu)成。圖2-2顯示了Struts實(shí)現(xiàn)的MVC框架。Struts-Struts-config.xml(模型)JavaBean(模型)JavaBeanEJB(控制器)ActionServletWeb服務(wù)器Action瀏覽器(控制器)ActionServletWeb服務(wù)器Action瀏覽器ActionFormActionForm(視圖)(視圖)JSP圖2-2Struts實(shí)現(xiàn)的MVC框架
3.在線考試系統(tǒng)的需求分析3.1基本需求分析隨著教育信息化的不斷發(fā)展,使用計(jì)算機(jī)實(shí)現(xiàn)無(wú)紙化的在線考試,是新時(shí)代考評(píng)方式的一次重大改革。借助計(jì)算機(jī)網(wǎng)絡(luò)實(shí)現(xiàn)的在線考試系統(tǒng)完成在線組卷、在線考試靈活實(shí)現(xiàn)機(jī)制、考試結(jié)果的自動(dòng)處理等方面的優(yōu)勢(shì)使在線考試系統(tǒng)將成為現(xiàn)代教育方式中的一種重要手段。為了發(fā)一套功能強(qiáng)大、滿(mǎn)足各方面需要的考試系統(tǒng),就一定要全面地分析考試的整個(gè)過(guò)程,理清考試過(guò)程中的每個(gè)階段、所有參與考試用戶(hù)的需求以及每個(gè)環(huán)節(jié)之間的關(guān)系,為在線考試系統(tǒng)的實(shí)現(xiàn)夯實(shí)的基礎(chǔ)。本系統(tǒng)是一個(gè)基于B/S結(jié)構(gòu)的在線考試系統(tǒng),為滿(mǎn)足學(xué)生進(jìn)行遠(yuǎn)程考試的要求,系統(tǒng)設(shè)計(jì)必須滿(mǎn)足以下要求:一、安全性考生在參加考試之前必須先使用授權(quán)過(guò)的合法賬號(hào)進(jìn)行登錄,以避免非法用戶(hù)隨意進(jìn)入考試系統(tǒng)。二、科學(xué)性無(wú)論是什么課程都要求教師在出題時(shí)既科學(xué)又嚴(yán)謹(jǐn),并且能夠合理的體現(xiàn)該課程的知識(shí)結(jié)構(gòu)和知識(shí)點(diǎn)。三、合理性由系統(tǒng)所生成的試卷應(yīng)能滿(mǎn)足不同對(duì)象對(duì)于考試內(nèi)容和難易程度的要求。四、可靠性系統(tǒng)能夠準(zhǔn)確地評(píng)閱以及存儲(chǔ)考生的答卷。除此之外,在線考試系統(tǒng)還應(yīng)有友好、簡(jiǎn)潔的界面,安全性要高,穩(wěn)定性要強(qiáng),并能滿(mǎn)足60人以上同時(shí)進(jìn)行考試。3.2用戶(hù)界面需求用戶(hù)界面設(shè)計(jì)的好壞作為人機(jī)交互的接口對(duì)于考試系統(tǒng)來(lái)說(shuō)非常重要。擁有友好的用戶(hù)界面,將使用戶(hù)感到親切,從而愿意使用本軟件。因此,要重視考試系統(tǒng)界面的開(kāi)發(fā)。在線考試系統(tǒng)的用戶(hù)界面應(yīng)具有以下幾方面特性:一、使用簡(jiǎn)單用戶(hù)界面應(yīng)盡可能避免一些復(fù)雜的操作,盡量同用戶(hù)的操作習(xí)慣保持一致??忌褪谡n教師只需要具備基本的操作計(jì)算機(jī)的能力就可以使用。二、給出必要的提示信息系統(tǒng)界面上提示信息的內(nèi)容一定要使用專(zhuān)業(yè)術(shù)語(yǔ),使得系統(tǒng)界面能正確引導(dǎo)教師和考生完成各項(xiàng)操作。三、系統(tǒng)響應(yīng)快、開(kāi)銷(xiāo)低系統(tǒng)界面在保證能夠及時(shí)響應(yīng)用戶(hù)操作的前提下,盡量減少所占用的系統(tǒng)資源。避免在用戶(hù)進(jìn)行輸入的同時(shí)頻繁地讀寫(xiě)硬盤(pán)或其它需長(zhǎng)時(shí)間進(jìn)行的操作。常用的數(shù)據(jù)一般裝入內(nèi)存。四、考試系統(tǒng)界面應(yīng)有容錯(cuò)能力應(yīng)能對(duì)用戶(hù)輸入的內(nèi)容進(jìn)行判斷,檢測(cè)一些非法的輸入,并反饋給用戶(hù)。當(dāng)用戶(hù)輸入出現(xiàn)錯(cuò)誤時(shí),不要使程序的運(yùn)行中斷。五、考試系統(tǒng)界面要有系統(tǒng)性對(duì)輸入的信息要分門(mén)別類(lèi)地進(jìn)行排放,不可雜亂無(wú)章地堆砌起來(lái)。六、考試系統(tǒng)界面要有可靠性在保證程序和數(shù)據(jù)安全的前提下,保證用戶(hù)正確、可靠地使用系統(tǒng)。授課教師和考生僅通過(guò)用戶(hù)界面,便可完成用戶(hù)所需要完成的一切操作。3.3系統(tǒng)安全需求在線考試系統(tǒng)涉及到教學(xué)內(nèi)容的完整性、可用性、保密性、可靠性、和可控性。一、完整性保證在傳輸和存儲(chǔ)考試系統(tǒng)信息的整個(gè)過(guò)程中不會(huì)被修改、丟失和破壞。二、可用性按照管理員所授予的權(quán)限,用戶(hù)可以合法的訪問(wèn)和使用考試系統(tǒng)中的數(shù)據(jù)。三、保密性在線考試系統(tǒng)的試題要嚴(yán)格保密,試題不泄漏給非授權(quán)的個(gè)人和實(shí)體是一個(gè)重要特性。這是考試系統(tǒng)最重要的要求。四、可靠性保證考生在考試過(guò)程中能夠連續(xù)、穩(wěn)定的答題。五、不可抵賴(lài)性在考試系統(tǒng)的信息交互過(guò)程中,所有參與者都不可能否認(rèn)或抵賴(lài)曾經(jīng)完成的操作和承諾。利用信息源證據(jù)可以防止用戶(hù)否認(rèn)已發(fā)送的信息。六、可控性可控性就是對(duì)在線考試的信息及系統(tǒng)實(shí)施安全監(jiān)控。3.4在線考試系統(tǒng)的業(yè)務(wù)需求分析3.4.1學(xué)生業(yè)務(wù)需求分析對(duì)考試用戶(hù)來(lái)說(shuō),需要包括登錄離考試系統(tǒng)、在線考試等功能。一、登錄離開(kāi)考試系統(tǒng)系統(tǒng)通過(guò)對(duì)考生輸入的學(xué)號(hào)、姓名和登錄密碼的合法性進(jìn)行校驗(yàn),保證合法的考生進(jìn)入考試系統(tǒng)參加考試。二、在線考試學(xué)生進(jìn)入在線考試系統(tǒng)后開(kāi)始答題??忌瓿纱痤}后進(jìn)行手動(dòng)交卷。考試結(jié)束前10分鐘,系統(tǒng)會(huì)自動(dòng)提示“提交試卷”。試卷提交后在線考試系統(tǒng)會(huì)把學(xué)生的答題情況以記錄的形式存入相應(yīng)的基本表。這樣一來(lái),使學(xué)生的試卷有案可查,可以進(jìn)行回溯。3.4.2教師用戶(hù)需求分析對(duì)教師用戶(hù)來(lái)說(shuō),需要系統(tǒng)提供的功能包括學(xué)生用戶(hù)管理、教師用戶(hù)信息管理、試題維護(hù)管理、在線組卷、試卷維護(hù)管理、在線閱卷、成績(jī)查詢(xún)等功能。一、學(xué)生用戶(hù)管理教師成功登錄后,可以增加、刪除、修改學(xué)生的信息。在增加學(xué)生信息時(shí),可以只輸入學(xué)生的學(xué)號(hào)、姓名和登錄密碼三項(xiàng)即可。其中登錄密碼可利用系統(tǒng)提供的自動(dòng)生成功能來(lái)自動(dòng)生成隨機(jī)密碼。二、教師用戶(hù)信息管理為了提高系統(tǒng)的安全級(jí)別、減少不必要的風(fēng)險(xiǎn),由系統(tǒng)管理員負(fù)責(zé)管理教師的信息管理。由于教師用戶(hù)的信息不多且不需要經(jīng)常更新,非常適合由系統(tǒng)管理員來(lái)進(jìn)行管理。三、試題數(shù)據(jù)管理教師可以對(duì)題庫(kù)中的試題增、刪、改三種基本操作,其中試題類(lèi)型包括單選、多選、判斷等客觀題;問(wèn)答(論述)、制作題、操作題等主觀題。教師可以設(shè)置題目、本題參考答案。四、在線組卷教師在組卷前可查詢(xún)系統(tǒng)中已有試卷,如果已存在則可以進(jìn)行修改,如果沒(méi)有則可以根據(jù)課程考核的要求從題庫(kù)中分題型挑選試題入卷。在線組卷,對(duì)生成的試卷可以預(yù)覽,不滿(mǎn)意可以進(jìn)行修改。五、試卷管理教師可以對(duì)所建立的試卷進(jìn)行管理,根據(jù)需要對(duì)試卷可以進(jìn)行增、刪、改三種基本操作。教師可對(duì)已存在的試卷進(jìn)行修改和刪除操作,對(duì)試卷可以進(jìn)行在線組卷。六、考務(wù)管理監(jiān)考教師可以從試卷庫(kù)中任意抽取一套試卷作為本次考試的試卷。七、在線閱卷教師登錄后,可以進(jìn)行在線閱卷,主要是針對(duì)試卷主觀題部分進(jìn)行在線打分,客觀題部分由系統(tǒng)自動(dòng)閱卷。教師在閱卷完成后,系統(tǒng)能立即提交成績(jī)。八、成績(jī)查詢(xún)教師在閱卷完成后能夠隨時(shí)查詢(xún)所有考生的客觀題、主觀題以及總成績(jī)。
4.在線考試系統(tǒng)的總體功能設(shè)計(jì)該系統(tǒng)是專(zhuān)門(mén)用于用戶(hù)注冊(cè)、登錄、參加在線考試以及管理員進(jìn)行試題錄入、修改、刪除、成績(jī)查詢(xún)、管理用戶(hù)的ASP應(yīng)用程序。它應(yīng)該具有開(kāi)放性、方便性和靈活性。管理員可以輕松地向題庫(kù)添加、修改和刪除試題。考生進(jìn)行有效的身份驗(yàn)證登錄后,選擇進(jìn)入考試系統(tǒng),并要求在規(guī)定的時(shí)間內(nèi)進(jìn)行答題,當(dāng)達(dá)到規(guī)定的時(shí)間后,系統(tǒng)將自動(dòng)予以提示。一旦考生做完交卷后便能立即看到自己的考試成績(jī),并且其分?jǐn)?shù)將被記入庫(kù)中以供審核和查閱;另外,還可完全由計(jì)算機(jī)自動(dòng)靈活、隨機(jī)的抽取試題庫(kù)中的各類(lèi)試題組成各種形式的試卷,其內(nèi)容會(huì)隨著庫(kù)中試題的改變而改變,而且,不同的考生生成的試題是不同的。在線考試系統(tǒng)在線考試系統(tǒng)管理員教師學(xué)生用戶(hù)信息管理學(xué)生成績(jī)管理試題信息管理試卷信息管理在線考試圖4-1總體結(jié)構(gòu)4.1試題設(shè)計(jì)鑒于主觀題的主觀性,目前無(wú)法實(shí)現(xiàn)系統(tǒng)自動(dòng)判卷,所以本系統(tǒng)只作客觀題部分。一般情況下,單選題往往在四個(gè)供選的答案A、B、C、D中選擇唯一正確的答案;多選題是在供選答案中有多個(gè)選擇;而判斷題實(shí)質(zhì)上就相當(dāng)于有兩個(gè)選項(xiàng)的單選題。因而,本系統(tǒng)中所涉及的單選題和多選題跟過(guò)去的大體相同,由于時(shí)間的關(guān)系,判斷題部分沒(méi)有做。并且假設(shè)多選題一般情況下也是最多提供四個(gè)備選答案,標(biāo)準(zhǔn)答案至少有一個(gè)。故各題型的樣題設(shè)計(jì)如下:?jiǎn)芜x題:password的意思是:A、密碼B、經(jīng)過(guò)C、單詞D、通路正確答案為A判斷題:password的意思是密碼:truefalse正確答案為true4.2系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)4.2.1tb_select表結(jié)構(gòu)optionA選項(xiàng)Asel_id主鍵標(biāo)識(shí)唯一題目optionB選項(xiàng)BoptionD選項(xiàng)DoptionA選項(xiàng)Asel_id主鍵標(biāo)識(shí)唯一題目optionB選項(xiàng)BoptionD選項(xiàng)D選擇題optionC選項(xiàng)Cname問(wèn)題Answer正確答案datatime出題時(shí)間sub_id科目編號(hào)use_id教師編號(hào)圖4-2字段名稱(chēng)類(lèi)型說(shuō)明sel_idchar主鍵nametext字段大小200optionAvarchar字段大小50optionBvarchar字段大小50optionCvarchar字段大小50optionDvarchar字段大小50Answervarchar字段大小50datatimedatetimesub_idvarchar字段大小50use_idchar字段大小20表格4-1各字段說(shuō)明:(1)sel_id是問(wèn)題的id號(hào),用來(lái)唯一標(biāo)志該問(wèn)題,把它設(shè)為主鍵。(2)name字段為問(wèn)題內(nèi)容,類(lèi)型為文本。(3)A字段代表選項(xiàng)A的內(nèi)容(4)B字段代表選項(xiàng)B的內(nèi)容(5)C字段代表選項(xiàng)C的內(nèi)容(6)D字段代表選項(xiàng)D的內(nèi)容(7)Answer字段表示答案選項(xiàng)(8)datatime字段表示出題時(shí)間(9)sub_id字段表示科目編號(hào)(10)use_id字段表示學(xué)生編號(hào)4.2.2tb_subject表結(jié)構(gòu)sub_id主鍵科目編號(hào)sub_id主鍵科目編號(hào)科目表sub_name科目名稱(chēng)圖4-3科目表字段名稱(chēng)類(lèi)型說(shuō)明sub_idchar字段長(zhǎng)度20sub_namevarchar字段長(zhǎng)度45表格4-2各字段說(shuō)明:(1)sub_id字段代表科目編號(hào)。(2)sub_name字段代表科目名稱(chēng)。exne_id主鍵試卷編號(hào)成績(jī)表stu_id學(xué)生編號(hào)use_id教師編號(hào)exne_id主鍵試卷編號(hào)成績(jī)表stu_id學(xué)生編號(hào)use_id教師編號(hào)cla_id科目編號(hào)sub_id科目編號(hào)score學(xué)生成績(jī)圖4-4成績(jī)表字段名稱(chēng)類(lèi)型說(shuō)明exne_idchar字段大小20use_idchar字段大小20stu_idchar字段大小20scorechar字段大小20sub_idchar字段大小20cla_idchar字段大小20表格4-3各字段說(shuō)明:(1)exne_id字段代表試卷編號(hào)(2)use_id字段代表教師編號(hào)(3)stu_id字段代表學(xué)生標(biāo)號(hào)(4)score字段考試紀(jì)錄中考試分?jǐn)?shù)(5)sub_id字段代表考試科目編號(hào)(6)cla_id字段代表編輯編號(hào)4.student表結(jié)構(gòu)lim_id用戶(hù)類(lèi)型編號(hào)use_id主鍵用戶(hù)編號(hào)lim_id用戶(hù)類(lèi)型編號(hào)use_id主鍵用戶(hù)編號(hào)用戶(hù)表password密碼uno用戶(hù)帳號(hào)cla_id班級(jí)編號(hào)圖4-5用戶(hù)表字段名稱(chēng)類(lèi)型說(shuō)明use_idchar字段大小20unovarchar字段大小45passwordvarchar字段大小45lim_idchar字段大小20cla_idchar字段長(zhǎng)度20表格4-4各字段說(shuō)明:(1)use_id字段代表賬號(hào)編號(hào)(2)uno字段代表用戶(hù)名(3)password字段代表重復(fù)密碼(4)lim_id字段代表用戶(hù)類(lèi)型編號(hào)(5)cla_id字段代表班級(jí)編號(hào)Index.jsp4.3系統(tǒng)的邏輯關(guān)系設(shè)計(jì)Index.jsp通過(guò)userid與password區(qū)別用戶(hù)并分配權(quán)限User.jspStudent在線考試Admin增刪用戶(hù)添加權(quán)限Student在線考試Admin增刪用戶(hù)添加權(quán)限Teacher錄入試題建立考試圖4-6首先在index.jsp設(shè)計(jì)表單用于用戶(hù)基本信息的錄入,然后跳轉(zhuǎn)user.jsp,這時(shí)候較為關(guān)鍵的一點(diǎn)到了,那就是建立session對(duì)象用于在整個(gè)瀏覽過(guò)程中實(shí)現(xiàn)用戶(hù)信息的同步。在user.jsp中使用判斷語(yǔ)句對(duì)用戶(hù)的級(jí)別進(jìn)行了判斷,同時(shí)為不同級(jí)別的用戶(hù)提供相應(yīng)的操作權(quán)限。教師教師抽題考生表考生答案試題庫(kù)標(biāo)準(zhǔn)答案考生表考生答案試題庫(kù)標(biāo)準(zhǔn)答案試卷試卷生成產(chǎn)生作答學(xué)生學(xué)生對(duì)比考生成績(jī)考生成績(jī)圖4-7上圖就是從教師出卷到考生答卷產(chǎn)生成績(jī)的具體流程。首先教師申請(qǐng)建立考試,系統(tǒng)從試題庫(kù)中隨機(jī)讀取試題然后將試題與答案寫(xiě)入試卷庫(kù),同時(shí)為教師開(kāi)啟此次考試的閱卷權(quán)限。此時(shí),考生就可以加入考試了,最后系統(tǒng)會(huì)將考生的答案寫(xiě)入考生庫(kù)。最后教師在線閱卷時(shí),就會(huì)同時(shí)比較試題庫(kù)中的標(biāo)準(zhǔn)答案和考生的答案,最后系統(tǒng)會(huì)將考生的成績(jī)與考生信息統(tǒng)計(jì)反饋給教師。
4.4在線考試系統(tǒng)考試模塊框圖輸入用戶(hù)名和密碼輸入用戶(hù)名和密碼是否正確進(jìn)入考試答題及交卷判卷成績(jī)提交結(jié)束開(kāi)始否是圖表4-8在線考試系統(tǒng)考試模塊框圖5.在線系統(tǒng)的實(shí)現(xiàn)在進(jìn)行了整體設(shè)計(jì)以后,就開(kāi)始進(jìn)行詳細(xì)的設(shè)計(jì)及編碼工作。也就是設(shè)計(jì)文件和把他們有機(jī)地組織在一起實(shí)現(xiàn)所有功能。5.1系統(tǒng)界面設(shè)計(jì)該系統(tǒng)的管理界面使用jquery設(shè)計(jì)的,該界面html代碼較少,大部門(mén)代碼都是動(dòng)態(tài)生成。該方式改變了以往要設(shè)計(jì)大量的html界面代碼,一個(gè)管理界面可以讓不同類(lèi)型用戶(hù)共同使用。登陸界面index.jsp圖5-1try{ stmt=conn.createStatement(); rs=stmt.executeQuery("selectuse_id,rolefromtb_userjointb_limitsontb_user.lim_id=tb_limits.lim_idwhereuno='"+username+"'andpassword='"+password+"';"); if(rs.next()){ Handle.jsonObject.element("use_id",rs.getString(1)); Handle.jsonObject.element("role",rs.getString(2)); Handle.jsonObject.element("no",username); rs=stmt.executeQuery("selecttnamefromtb_userdetailwhereuse_id='"+Handle.jsonObject.get("use_id")+"'"); if(rs.next()){ session.setAttribute("username",rs.getString(1)); } request.getRequestDispatcher("login.jsp").forward(request,response); }else{ request.getRequestDispatcher("index.jsp").forward(request,response); } }catch(SQLExceptione){ e.printStackTrace(); }以上代碼實(shí)現(xiàn)功能如下:首先通過(guò)傳入的用戶(hù)名和密碼查詢(xún)數(shù)據(jù)庫(kù)檢索是否存在此用戶(hù),然后獲取用戶(hù)權(quán)限,這里判斷的是用戶(hù)權(quán)限admin,最為關(guān)鍵的是session語(yǔ)句,通過(guò)建立session讓用戶(hù)的整個(gè)會(huì)話過(guò)程更加安全,同時(shí)session記錄了必要的用戶(hù)信息,用于驗(yàn)證用戶(hù)的操作。5.2自動(dòng)生成試卷的實(shí)現(xiàn)生成試卷的頁(yè)面圖5-2for(inti=0;i<=num;i++){ sql="selectname,optionA,optionB,optionC,optionD,answerfromtb_selectwheresub_id='" +GreateExamPage.exJson.get("fangshi2") +"'anduse_id='" +GreateExamPage.exJson.get("use_id") +"'ORDERBYRAND()LIMIT" +GreateExamPage.exJson.getJSONArray("examnews") .getJSONObject(i).get("snum")+""; if(conn==null) return; Statementstmt=null; ResultSetrs=null; try{ stmt=conn.createStatement(); rs=stmt.executeQuery(sql); while(rs.next()){ flag++; exne.put("name",rs.getString(1)); exne.put("optionA",rs.getString(2)); exne.put("optionB",rs.getString(3)); exne.put("optionC",rs.getString(4)); exne.put("optionD",rs.getString(5)); exne.put("answer",rs.getString(6)); exArray.add(flag,exne); exne.clear(); } }catch(SQLExceptione){ e.printStackTrace(); } exne1.put("select-"+i,exArray); exArray.clear(); if(Integer.parseInt((String)GreateExamPage.exJson .getJSONArray("examnews").getJSONObject(i).get("bnum"))>0){ Boolean(i); } flag=-1; } GreateExamPage.exJson.put("exam",exne1); exArray.clear();隨機(jī)讀取數(shù)據(jù)表使用了rand()實(shí)現(xiàn),但是后來(lái)發(fā)現(xiàn)rand()方法在這里效率是很低的,當(dāng)系統(tǒng)做大后,效率下降是相當(dāng)?shù)膮柡Φ?,所以有必要好好研究一下更為智能合理的試卷生成算法?.3閱卷功能的實(shí)現(xiàn)簡(jiǎn)介在學(xué)生考試的過(guò)程中,已經(jīng)將標(biāo)準(zhǔn)答案放到上圖的第一個(gè)數(shù)組中,第二個(gè)數(shù)組中存放著學(xué)生提
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 商業(yè)步行街景觀路燈施工合同
- 瑜伽教練保姆合同模板
- 職業(yè)體驗(yàn)?zāi)攴b租賃合同模板
- 城市防噪系統(tǒng)防水涂料施工合同
- 婚慶用品租賃合同范本
- 高爐建設(shè)投資分析合同
- 鄭州二手房買(mǎi)賣(mài)合同風(fēng)險(xiǎn)防范
- 外語(yǔ)培訓(xùn)機(jī)構(gòu)教師合同
- 住宅建筑地暖安裝合同樣本
- 電子產(chǎn)品零售倉(cāng)儲(chǔ)協(xié)議
- 公共部門(mén)決策的理論與方法第9-14章課件
- 安全生產(chǎn)行政執(zhí)法知識(shí)課件
- 人教版八年級(jí)上冊(cè) 歷史全冊(cè)課件【部編教材】
- 2021年四川音樂(lè)學(xué)院輔導(dǎo)員招聘試題及答案解析
- 《語(yǔ)文課程標(biāo)準(zhǔn)》學(xué)習(xí)筆記
- 基礎(chǔ)護(hù)理學(xué)試題及答案(各章節(jié))-基礎(chǔ)護(hù)理學(xué)第四版試題及答案
- 地形對(duì)聚落及交通線路分布影響
- 合成抗菌藥醫(yī)學(xué)知識(shí)培訓(xùn)培訓(xùn)課件
- 部編版道德與法治五年級(jí)上冊(cè)期末試卷4
- T梁預(yù)制臺(tái)座占用時(shí)間及資源配置分析
- 名中醫(yī)工作室跟師醫(yī)案記錄 (15)
評(píng)論
0/150
提交評(píng)論