java在線考試系統(tǒng)畢業(yè)論文最終修改版_第1頁(yè)
java在線考試系統(tǒng)畢業(yè)論文最終修改版_第2頁(yè)
java在線考試系統(tǒng)畢業(yè)論文最終修改版_第3頁(yè)
java在線考試系統(tǒng)畢業(yè)論文最終修改版_第4頁(yè)
java在線考試系統(tǒng)畢業(yè)論文最終修改版_第5頁(yè)
已閱讀5頁(yè),還剩36頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

本科生畢業(yè)論文設(shè)計(jì)河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)分析與設(shè)計(jì)姓名QQ781408677學(xué)號(hào)專業(yè)指導(dǎo)教師2012年5月25日I摘要在計(jì)算機(jī)網(wǎng)絡(luò)飛速發(fā)展的今天,互聯(lián)網(wǎng)應(yīng)用在人們政治、經(jīng)濟(jì)、生活等各個(gè)方面發(fā)揮著重要的作用,然而在教育方面卻沒(méi)有得到充分的利用。在追求效率與公平的時(shí)代,為了使學(xué)校、教師以及學(xué)生在考試過(guò)程減少時(shí)間、金錢的投入,因此設(shè)計(jì)開(kāi)發(fā)了這個(gè)在線考試系統(tǒng)。本文論述了一個(gè)以INTERNET為網(wǎng)絡(luò)平臺(tái)、三層架構(gòu)(B/S)的在線考試系統(tǒng)的設(shè)計(jì)原理、設(shè)計(jì)思想及具體的實(shí)現(xiàn)過(guò)程,對(duì)在設(shè)計(jì)過(guò)程中涉及到的關(guān)鍵算法及重要作業(yè)流程作了具體分析和介紹,并對(duì)各個(gè)模塊的設(shè)計(jì)思想及設(shè)計(jì)過(guò)程作了詳細(xì)闡述。本系統(tǒng)采用JSPSERVLET等技術(shù),設(shè)法為學(xué)校創(chuàng)建一個(gè)便捷公平的在線考試平臺(tái)。本論文闡述了系統(tǒng)所要實(shí)現(xiàn)的功能,其中包括學(xué)生考試,人員管理,題庫(kù)管理等多個(gè)功能,對(duì)各功能模塊的實(shí)現(xiàn)流程以及后臺(tái)數(shù)據(jù)庫(kù)的設(shè)計(jì)進(jìn)行說(shuō)明,并詳細(xì)介紹了在線考試系統(tǒng)主要業(yè)務(wù)的實(shí)現(xiàn)方式。對(duì)于不同用戶角色,本文將分別關(guān)于功能結(jié)構(gòu)進(jìn)行介紹,并對(duì)其邏輯和代碼實(shí)現(xiàn)進(jìn)行解釋和說(shuō)明。關(guān)鍵詞在線考試;ORACLE數(shù)據(jù)庫(kù);JSP;MVCIIABSTRACTALONGWITHTHERAPIDDEVELOPMENTOFINFORMATIONTECHNIQUESUCHASCOMPUTERANDNETWORKNOWADAYS,INPEOPLESDAILYLIFE,ESPECIALLYINPOLITICS,ECONOMYANDEDUCATIONETC,THEINTERNETISPLAYINGANIMPORTANTROLEHOWEVER,INTHEEDUCATIONASPECT,ITHASNOTBEENFULLYUTILIZEDINORDERTOPURSUITHIGHEREFFICIENCYANDQUALITYOFTHEEXAMINATIONPROCESS,ANDALSOTOREDUCETHECOSTOFMONEYANDTIME,ANONLINEEXAMINATIONSYSTEMISTHEREFORENECESSARYTHISTHESISPROPOSESTHREEARCHITECTURESB/SOFTHEONLINEEXAMINATIONSYSTEMDESIGN,ANDALSOINTRODUCESTHEDESIGNIDEAANDTHEREALIZATIONPROCESSOFDESIGNTHEPROCESSOFTHEALGORITHMANDTHEKEYIMPORTANTWORKFLOWISALSOANALYZEDANDINTRODUCEDTHISSYSTEMUSESTHEJSPSERVLETTECHNOLOGYCREATESACONVENIENTONLINEEXAMINATIONPLATFORMTHISTHESISDESCRIBESTHESYSTEMFUNCTIONS,INCLUDINGSTUDENTSTEST,PERSONNELMANAGEMENTANDMANAGEMENTETCFORDIFFERENTUSERROLES,THISTHESISINTRODUCESTHEFUNCTIONRESPECTIVELYOFSTRUCTURE,INCLUDINGTHELOGICANDCODEREALIZATIONTOEXPLANATIONANDINSTRUCTIONSKEYWORDSONLINEEXAMINATION,ORACLEDATABASE,JSP,MVCIII目錄1引言111課題的背景112課題的目的和意義113本文的內(nèi)容安排22開(kāi)發(fā)工具及相關(guān)技術(shù)321系統(tǒng)的B/S結(jié)構(gòu)簡(jiǎn)述322開(kāi)發(fā)環(huán)境及開(kāi)發(fā)工具3221DREAMWEAVER3222ECLIPSE4223ORACLE數(shù)據(jù)庫(kù)4224TOMCAT服務(wù)器423相關(guān)技術(shù)5231CSSDIV5232JAVASCRIPT和JQUERY5233SERVLET和JSP5234MVC模式6235JDBC724本章小結(jié)73系統(tǒng)分析831系統(tǒng)需求分析8311系統(tǒng)功能的需求8312系統(tǒng)性能的需求832系統(tǒng)可行性分析9321經(jīng)濟(jì)可行性分析9322技術(shù)可行性分析933系統(tǒng)流程分析9331業(yè)務(wù)流程分析10332數(shù)據(jù)流程分析1034本章小結(jié)114系統(tǒng)設(shè)計(jì)1241系統(tǒng)總體規(guī)劃1242數(shù)據(jù)庫(kù)設(shè)計(jì)13421概念結(jié)構(gòu)設(shè)計(jì)13422邏輯結(jié)構(gòu)設(shè)計(jì)1543本章小結(jié)185系統(tǒng)實(shí)施1951創(chuàng)建與數(shù)據(jù)庫(kù)的連接1952系統(tǒng)的登錄頁(yè)面20IV53學(xué)生主頁(yè)面22531考試科目查詢22532進(jìn)行考試22533成績(jī)查詢2654教師主頁(yè)面27541題庫(kù)管理27542試卷管理27543考生成績(jī)查詢2855管理員主頁(yè)面29551人員信息管理29552考試科目管理2956本章小結(jié)306系統(tǒng)測(cè)試3161測(cè)試的目標(biāo)與方法3162測(cè)試用例31621系統(tǒng)登錄測(cè)試31622學(xué)生模塊測(cè)試32623教師模塊測(cè)試32624管理員模塊測(cè)試3363本章小結(jié)337結(jié)束語(yǔ)34參考文獻(xiàn)35致謝3611引言11課題的背景從計(jì)算機(jī)網(wǎng)絡(luò)的誕生至今天,計(jì)算機(jī)網(wǎng)絡(luò)應(yīng)用已進(jìn)入人類社會(huì)的各個(gè)方面并發(fā)揮著越來(lái)越重要的作用,我們發(fā)現(xiàn)我們的生活、工作、學(xué)習(xí)等越來(lái)越離不開(kāi)網(wǎng)絡(luò)。在線考試系統(tǒng)是一款基于網(wǎng)絡(luò)瀏覽器的適用于學(xué)校以及教育培訓(xùn)機(jī)構(gòu)等的實(shí)用型系統(tǒng),他一改傳統(tǒng)的考試模式為我們的考試帶來(lái)新的體驗(yàn),是計(jì)算機(jī)網(wǎng)絡(luò)應(yīng)用的標(biāo)準(zhǔn)體現(xiàn)。眾所周知,教育是治國(guó)之本,因此如何更好的做好教育工作是大家一直都很關(guān)注的問(wèn)題。只有率先認(rèn)識(shí)到網(wǎng)絡(luò)技術(shù)在當(dāng)今教育中的重要作用,用它解決教育中的問(wèn)題,把它作為教育的基本工具,才能在全球教育競(jìng)爭(zhēng)中立于不敗之地。如今,越來(lái)越多的學(xué)校、教育培訓(xùn)機(jī)構(gòu)等都將網(wǎng)絡(luò)技術(shù)應(yīng)用于教育,通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)實(shí)現(xiàn)在線教育或培訓(xùn),網(wǎng)絡(luò)教學(xué)便由此而生。目前我國(guó)網(wǎng)絡(luò)教學(xué)系統(tǒng)的開(kāi)發(fā)和使用還處于發(fā)展階段,各項(xiàng)功能的實(shí)現(xiàn)還不夠完善。網(wǎng)絡(luò)教學(xué)包括很多環(huán)節(jié),例如選課系統(tǒng)、教學(xué)系統(tǒng)、問(wèn)答系統(tǒng)和考試系統(tǒng)等等。其中很重要的一個(gè)環(huán)節(jié)就是在線考試系統(tǒng),同時(shí)它也是最難實(shí)現(xiàn)的環(huán)節(jié)。目前大多數(shù)學(xué)校和社會(huì)上的考試依然采用傳統(tǒng)的考試模式,在此模式下,組織一次考試一般需要經(jīng)過(guò)人工出題、復(fù)印試卷、考生考試、人工閱卷和成績(jī)統(tǒng)計(jì)等五個(gè)環(huán)節(jié)。顯然,教師和考務(wù)工作人員的工作量很大,效率也很低,并且難免會(huì)出現(xiàn)各種各樣的錯(cuò)誤,嚴(yán)重影響了教學(xué)的效率和質(zhì)量,可以說(shuō)傳統(tǒng)的考試模式已經(jīng)逐漸滿足不了當(dāng)今的考試需求。人們迫切需要一種自動(dòng)化程度相當(dāng)高的計(jì)算機(jī)系統(tǒng)來(lái)進(jìn)行在線考試,并進(jìn)行題庫(kù)信息的管理。在此背景下,我們需要開(kāi)發(fā)一款在線考試系統(tǒng)。12課題的目的和意義在線考試系統(tǒng)將使學(xué)校的考試管理工作更加規(guī)范化,自動(dòng)化,簡(jiǎn)單化。一方面方便考生考試;另一方面減輕教師及考務(wù)人員的工作負(fù)擔(dān),提高工作效率。從而提高教學(xué)質(zhì)量?;诰W(wǎng)絡(luò)技術(shù)的在線考試系統(tǒng)可借助校園局域網(wǎng)進(jìn)行。將試題內(nèi)容放在服務(wù)器上,考生通過(guò)帳號(hào)和密碼進(jìn)行登錄參加考試,考試答案也存放在服務(wù)器上,這樣考試的公平性、答案的安全性可以得到有效的保證。試題可以根據(jù)題庫(kù)中的內(nèi)容隨機(jī)生成,可有效避免考試前的押題;同時(shí)每個(gè)人的考試題目都不會(huì)完全一樣,這樣可有效避免考試抄襲;而且可以采用大量標(biāo)準(zhǔn)格式化的試題,從而使用計(jì)算2機(jī)判卷,大大提高閱卷效率;還可以直接把成績(jī)送到數(shù)據(jù)庫(kù)中,進(jìn)行統(tǒng)計(jì)、排名等操作,便于對(duì)考試結(jié)果進(jìn)行分析。可見(jiàn),采用在線考試模式將是未來(lái)考試發(fā)展的趨勢(shì)。因此,結(jié)合我校教學(xué)考試現(xiàn)狀,我設(shè)計(jì)并開(kāi)發(fā)了河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)。13本文的內(nèi)容安排在本論文中,首先論述了在線考試系統(tǒng)的研究背景及其意義;然后對(duì)要開(kāi)發(fā)的河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)進(jìn)行了較為詳細(xì)的分析(包括需求分析、流程分析、系統(tǒng)可行性分析等);對(duì)本系統(tǒng)所使用的開(kāi)發(fā)語(yǔ)言、相關(guān)技術(shù)以及開(kāi)發(fā)環(huán)境和開(kāi)發(fā)工具進(jìn)行了簡(jiǎn)單的介紹;對(duì)本系統(tǒng)進(jìn)行了功能模塊設(shè)計(jì)(包括考生考試模塊、教師管理模塊、管理員管理等);在對(duì)系統(tǒng)分析與設(shè)計(jì)的基礎(chǔ)上,運(yùn)用JSPSERVLET和ORACLE開(kāi)發(fā)了河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng);最后對(duì)已經(jīng)開(kāi)發(fā)的系統(tǒng)進(jìn)行了測(cè)試。本論文的內(nèi)容安排如下第一章、引言,其中介紹了課題研究的背景,課題的目的和意義。第二章、系統(tǒng)開(kāi)發(fā)工具及相關(guān)技術(shù)介紹,其中包括對(duì)B/S結(jié)構(gòu)、CSSDIV網(wǎng)頁(yè)布局、JSP、SERVLET、ORACLE等的簡(jiǎn)單介紹。第三章、系統(tǒng)分析,其中包括需求分析、系統(tǒng)流程分析、可行性分析等。第四章、系統(tǒng)設(shè)計(jì),其中包括功能設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)等。第五章、系統(tǒng)實(shí)施,對(duì)系統(tǒng)的各個(gè)模塊的實(shí)現(xiàn)做詳細(xì)的介紹。第六章、系統(tǒng)測(cè)試,其中包括對(duì)測(cè)試的目的和方法、簡(jiǎn)單的測(cè)試用例等。第七章、結(jié)束語(yǔ),對(duì)在寫整篇論文過(guò)程中的感受和收獲進(jìn)行總結(jié)。32開(kāi)發(fā)工具及相關(guān)技術(shù)河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)是基于B/S模式設(shè)計(jì)的,它選擇的前臺(tái)開(kāi)發(fā)語(yǔ)言為JSP,后臺(tái)數(shù)據(jù)庫(kù)管理工具為ORACLE10G,開(kāi)發(fā)工具為ECLIPSE,其WEB服務(wù)器為TOMCAT60及以上版本。21系統(tǒng)的B/S結(jié)構(gòu)簡(jiǎn)述B/S結(jié)構(gòu)(BROWSER/SERVER,瀏覽器/服務(wù)器模式)是WEB興起后的一種網(wǎng)絡(luò)結(jié)構(gòu)模式,WEB瀏覽器是客戶端最主要的應(yīng)用軟件。這種模式統(tǒng)一了客戶端,將系統(tǒng)功能實(shí)現(xiàn)的核心部分集中到服務(wù)器上,簡(jiǎn)化了系統(tǒng)的開(kāi)發(fā)、維護(hù)和使用。客戶機(jī)上只要安裝一個(gè)瀏覽器(BROWSER),如NETSCAPENAVIGATOR或INTERNETEXPLORER,服務(wù)器安裝ORACLE、SYBASE、INFORMIX或SQLSERVER等數(shù)據(jù)庫(kù)。瀏覽器通過(guò)WEBSERVER同數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)交互。B/S結(jié)構(gòu)的優(yōu)點(diǎn)具有分布性特點(diǎn),可以隨時(shí)隨地進(jìn)行查詢、瀏覽等業(yè)務(wù)處理;業(yè)務(wù)擴(kuò)展簡(jiǎn)單方便,通過(guò)增加網(wǎng)頁(yè)即可增加服務(wù)器功能;維護(hù)簡(jiǎn)單方便,只需要改變網(wǎng)頁(yè),即可實(shí)現(xiàn)所有用戶的同步更新;開(kāi)發(fā)簡(jiǎn)單,共享性強(qiáng)。22開(kāi)發(fā)環(huán)境及開(kāi)發(fā)工具本系統(tǒng)開(kāi)發(fā)環(huán)境選擇微軟平臺(tái)作為主導(dǎo),一方面考慮目前微軟的飛速發(fā)展,越來(lái)越多的企業(yè)在規(guī)劃內(nèi)部網(wǎng)絡(luò)時(shí),將微軟平臺(tái)作為首選方案;令一方面從技術(shù)角度來(lái)講,微軟平臺(tái)上的應(yīng)用無(wú)論是在開(kāi)發(fā)上,還是在軟件的部署上都是非常容易,而且性能優(yōu)越。以下簡(jiǎn)單介紹本系統(tǒng)所使用的開(kāi)發(fā)工具221DREAMWEAVERDREAMWEAVER是美國(guó)MACROMEDIA公司開(kāi)發(fā)(后被ADOBE公司收購(gòu))的集網(wǎng)頁(yè)制作和管理網(wǎng)站于一身的所見(jiàn)即所得網(wǎng)頁(yè)編輯器。DREAMWEAVER可以用最快速的方式將FIREWORKS,F(xiàn)REEHAND,或PHOTOSHOP等檔案移至網(wǎng)頁(yè)上。使用檢色吸管工具選擇熒幕上的顏色可設(shè)定最接近的網(wǎng)頁(yè)安全色。對(duì)于選單,快捷鍵與格式控制,都只要一個(gè)簡(jiǎn)單步驟便可完成。DREAMWEAVER能與您喜愛(ài)的設(shè)計(jì)工具,如PLAYBACKFLASH,SHOCKWAVE和外掛模組等搭配,不需離開(kāi)DREAMWEAVER便可完成,整體運(yùn)用流程自然順暢。除此之外,只要單擊便可使DREAMWEAVER自動(dòng)開(kāi)啟FIREWORK或PHOTOSHOP來(lái)進(jìn)行編輯與設(shè)定圖檔的最佳化。本系統(tǒng)采用DREAMWEAVERCS4版本,其特點(diǎn)是界面設(shè)計(jì)緊湊,使用方便。4222ECLIPSEECLIPSE是一個(gè)開(kāi)放源代碼的、基于JAVA的可擴(kuò)展開(kāi)發(fā)平臺(tái)。就其本身而言,它只是一個(gè)框架和一組服務(wù),用于通過(guò)插件組件構(gòu)建開(kāi)發(fā)環(huán)境。幸運(yùn)的是,ECLIPSE附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括JAVA開(kāi)發(fā)工具(JAVADEVELOPMENTKIT,JDK)。雖然大多數(shù)用戶很樂(lè)于將ECLIPSE當(dāng)作JAVA集成開(kāi)發(fā)環(huán)境(IDE)來(lái)使用,但ECLIPSE的目標(biāo)卻不僅限于此。ECLIPSE還包括插件開(kāi)發(fā)環(huán)境(PLUGINDEVELOPMENTENVIRONMENT,PDE),這個(gè)組件主要針對(duì)希望擴(kuò)展ECLIPSE的軟件開(kāi)發(fā)人員,因?yàn)樗试S他們構(gòu)建與ECLIPSE環(huán)境無(wú)縫集成的工具。由于ECLIPSE中的每樣?xùn)|西都是插件,對(duì)于給ECLIPSE提供插件,以及給用戶提供一致和統(tǒng)一的集成開(kāi)發(fā)環(huán)境而言,所有工具開(kāi)發(fā)人員都具有同等的發(fā)揮場(chǎng)所。本系統(tǒng)采用的是ECLIPSE35版本,其特點(diǎn)是性能穩(wěn)定。223ORACLE數(shù)據(jù)庫(kù)ORACLEDATABASE,又名ORACLERDBMS,或簡(jiǎn)稱ORACLE。是美國(guó)ORACLE公司(甲骨文)提供的以分布式數(shù)據(jù)庫(kù)為核心的一組軟件產(chǎn)品,是目前最流行的客戶/服務(wù)器CLIENT/SERVER或B/S體系結(jié)構(gòu)的數(shù)據(jù)庫(kù)之一。ORACLE數(shù)據(jù)庫(kù)是目前世界上使用最為廣泛的數(shù)據(jù)庫(kù)管理系統(tǒng),作為一個(gè)通用的數(shù)據(jù)庫(kù)系統(tǒng),它具有完整的數(shù)據(jù)管理功能;作為一個(gè)關(guān)系數(shù)據(jù)庫(kù),它是一個(gè)完備關(guān)系的產(chǎn)品;作為分布式數(shù)據(jù)庫(kù)它實(shí)現(xiàn)了分布式處理功能。ORACLE數(shù)據(jù)庫(kù)具有數(shù)據(jù)的大量性、數(shù)據(jù)的保存的持久性、數(shù)據(jù)的共享性和數(shù)據(jù)的可靠性等特點(diǎn)。本系統(tǒng)采用的是ORACLE10G數(shù)據(jù)庫(kù)。ORACLE10G數(shù)據(jù)庫(kù)相對(duì)于以前版本關(guān)鍵提高有二1降低管理開(kāi)銷,2提高性能。ORACLE10G有對(duì)高可用性的增強(qiáng)、新的FLASHBACK能力、支持回滾更新操作;對(duì)安全性的增強(qiáng),便于管理大量的用戶;BI方面的增強(qiáng),包括改進(jìn)的SQL能力、分析功能、OLAP、數(shù)據(jù)挖掘的能力等;對(duì)非關(guān)系型數(shù)據(jù)存儲(chǔ)的能力得到了改進(jìn);XML的能力;對(duì)開(kāi)發(fā)能力支持的加強(qiáng),對(duì)生物信息學(xué)BIOINFORMATICS的支持。224TOMCAT服務(wù)器本系統(tǒng)運(yùn)行環(huán)境為TOMCAT60。TOMCAT是APACHE軟件基金會(huì)(APACHESOFTWAREFOUNDATION)的JAKARTA項(xiàng)目中的一個(gè)核心項(xiàng)目,由APACHE、SUN和其他一些公司及個(gè)人共同開(kāi)發(fā)而成。由于有了SUN的參與和支持,最新的SERVLET和JSP規(guī)范總是能在TOMCAT中得到體現(xiàn),TOMCAT5支持最新的SERVLET24和JSP20規(guī)范。因?yàn)門OMCAT技術(shù)先進(jìn)、性能穩(wěn)定,而且免費(fèi),因而深受JAVA愛(ài)好者的喜愛(ài)并得到了部分軟件開(kāi)發(fā)商的認(rèn)可,成為目前比較流行的WEB應(yīng)用服務(wù)器。523相關(guān)技術(shù)231CSSDIVCSS是層疊樣式表(CASCADINGSTYLESHEETS)的縮寫,用于定義HTML元素的顯示形式,是W3C推出的格式化網(wǎng)頁(yè)內(nèi)容的標(biāo)準(zhǔn)技術(shù)。CSSDIV是網(wǎng)站標(biāo)準(zhǔn)設(shè)計(jì)中常用術(shù)語(yǔ)之一,是一種比較成熟的網(wǎng)頁(yè)布局方法。可實(shí)現(xiàn)網(wǎng)頁(yè)頁(yè)面內(nèi)容與表現(xiàn)相分離,即在不改變HTML源代碼的同時(shí),能夠根據(jù)CSS中對(duì)標(biāo)簽的的不同定義而顯示出不同的頁(yè)面效果。能夠?qū)崿F(xiàn)傳統(tǒng)的表格(TABLE)布局定位方式所不能實(shí)現(xiàn)的效果。當(dāng)然,本人在使用中并沒(méi)有完全摒棄表格(TABLE),而是DIV與之相結(jié)合使用,使頁(yè)面靈活、工整、多層次的顯示。232JAVASCRIPT和JQUERYJAVASCRIPT是一種能讓你的網(wǎng)頁(yè)更加生動(dòng)活潑的程式語(yǔ)言,也是目前網(wǎng)頁(yè)中設(shè)計(jì)中最容易學(xué)又最方便的語(yǔ)言。你可以利用JAVASCRIPT輕易的做出親切的歡迎訊息、漂亮的數(shù)字鐘、有廣告效果的跑馬燈及簡(jiǎn)易的選舉,還可以顯示瀏覽器停留的時(shí)間。讓這些特殊效果提高網(wǎng)頁(yè)的可觀性。本系統(tǒng)中主要使用JAVASCRIPT的表單驗(yàn)證功能以及對(duì)時(shí)間的控制。JQUERY是一個(gè)優(yōu)秀的JAVASCRIPT框架。它是輕量級(jí)的JS庫(kù)壓縮后只有21K,它兼容CSS3,還兼容各種瀏覽器(IE60,FF15,SAFARI20,OPERA90)。JQUERY使用戶能更方便地處理HTMLDOCUMENTS、EVENTS、實(shí)現(xiàn)動(dòng)畫效果,并且方便地為網(wǎng)站提供AJAX交互。JQUERY還有一個(gè)比較大的優(yōu)勢(shì)是,它的文檔說(shuō)明很全,而且各種應(yīng)用也說(shuō)得很詳細(xì),同時(shí)還有許多成熟的插件可供選擇。JQUERY能夠使用戶的HTML頁(yè)保持代碼和HTML內(nèi)容分離,也就是說(shuō),不用再在HTML里面插入一堆JS來(lái)調(diào)用命令了,只需定義ID即可。在使用過(guò)程中本人發(fā)現(xiàn)JQUERY與傳統(tǒng)的JAVASCRIPT相比,優(yōu)勢(shì)之一在于JAVASCRIPT是單線程的,而JQUERY可以實(shí)現(xiàn)多線程,即點(diǎn)擊一個(gè)按鈕可以同時(shí)觸發(fā)多個(gè)事件,使用起來(lái)更加方便。233SERVLET和JSPSERVLET是JAVASERVLET的簡(jiǎn)稱,是一種服務(wù)器端的JAVA應(yīng)用程序,具有獨(dú)立于平臺(tái)和協(xié)議的特性,可以生成動(dòng)態(tài)的WEB頁(yè)面。它擔(dān)當(dāng)客戶請(qǐng)求(WEB瀏覽器或其他HTTP客戶程序)與服務(wù)器響應(yīng)(HTTP服務(wù)器上的數(shù)據(jù)庫(kù)或應(yīng)用程序)的中間層。SERVLET是位于WEB服務(wù)器內(nèi)部的服務(wù)器端的JAVA應(yīng)用程序,與傳統(tǒng)的從命令行啟動(dòng)的JAVA應(yīng)用程序不同,SERVLET由WEB服務(wù)器進(jìn)行加載,該WEB服務(wù)器必須包含支持SERVLET的JAVA虛擬機(jī)。6JSP(JAVASERVERPAGES是由SUNMICROSYSTEMS公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。JSP是在SERVLET技術(shù)基礎(chǔ)上發(fā)展而來(lái)的,但在實(shí)際使用中功能又有很大的區(qū)別,JSP技術(shù)有點(diǎn)類似ASP技術(shù),它是在傳統(tǒng)的網(wǎng)頁(yè)HTML文件中插入JAVA程序段SCRIPTLET和JSP標(biāo)記TAG,從而形成JSP文件JSP。另外用JSP開(kāi)發(fā)的WEB應(yīng)用是跨平臺(tái)的,既能在LINUX下運(yùn)行,也能在其他操作系統(tǒng)上運(yùn)行。JSP技術(shù)不是JAVASERVLET技術(shù)的全部,它只是JAVASERVLET技術(shù)的一個(gè)成功應(yīng)用。JSP技術(shù)屏蔽了SERVLET對(duì)象創(chuàng)建的過(guò)程,使得WEB程序設(shè)計(jì)者只須關(guān)心JSP頁(yè)面本身的結(jié)構(gòu)、設(shè)計(jì)好各種標(biāo)記。有效地分離頁(yè)面的視圖和數(shù)據(jù)處理等,不必再用PRINTLN語(yǔ)句來(lái)輸出每一行HTML代碼。更重要的是,借助內(nèi)容和外觀的分離,頁(yè)面制作中不同性質(zhì)的任務(wù)可以方便地分開(kāi)比如,由頁(yè)面設(shè)計(jì)者進(jìn)行HTML設(shè)計(jì),同時(shí)留出供SERVLET程序員插入動(dòng)態(tài)內(nèi)容的空間。234MVC模式MVC是三個(gè)單詞的縮寫,分別為模型MODEL,視圖VIEW和控制CONTROLLER。MVC模式的目的就是實(shí)現(xiàn)WEB系統(tǒng)的職能分工。MODEL層實(shí)現(xiàn)系統(tǒng)中的業(yè)務(wù)邏輯,通常可以用JAVABEAN或EJB來(lái)實(shí)現(xiàn)。VIEW層用于與用戶的交互,通常用JSP來(lái)實(shí)現(xiàn)。CONTROLLER層是MODEL與VIEW之間溝通的橋梁,它可以分派用戶的請(qǐng)求并選擇恰當(dāng)?shù)囊晥D以用于顯示,同時(shí)它也可以解釋用戶的輸入并將它們映射為模型層可執(zhí)行的操作。使用MVC設(shè)計(jì)模式,應(yīng)用程序?qū)⒈环殖扇齻€(gè)核心部件模型、視圖、控制器。它們各自處理自己的任務(wù)。本系統(tǒng)將使用第一種常見(jiàn)的MVC設(shè)計(jì)模式JSPSERVLETJAVABEAN進(jìn)行開(kāi)發(fā),即通過(guò)創(chuàng)建一些SERVLET對(duì)象,配合JSP頁(yè)面來(lái)完成整個(gè)WEB系統(tǒng)。其數(shù)據(jù)傳遞過(guò)程如圖21所示圖21MVC(JSPSERVLETJAVABEAN)設(shè)計(jì)模式原理圖7235JDBCJDBC(JAVADATABASECONNECTIVITY,JAVA數(shù)據(jù)庫(kù)連接)是一種用于執(zhí)行SQL語(yǔ)句的JAVAAPI,可以為多種關(guān)系數(shù)據(jù)庫(kù)提供統(tǒng)一訪問(wèn),它由一組用JAVA語(yǔ)言編寫的類和接口組成。JDBC為數(shù)據(jù)庫(kù)開(kāi)發(fā)人員提供了一個(gè)標(biāo)準(zhǔn)的API,據(jù)此可以構(gòu)建更高級(jí)的工具和接口,使數(shù)據(jù)庫(kù)開(kāi)發(fā)人員能夠用純JAVAAPI編寫數(shù)據(jù)庫(kù)應(yīng)用程序。有了JDBC,向各種關(guān)系數(shù)據(jù)發(fā)送SQL語(yǔ)句就是一件很容易的事。換言之,有了JDBCAPI,就不必為訪問(wèn)ORACLE數(shù)據(jù)庫(kù)專門寫一個(gè)程序,為訪問(wèn)SQLSERVER數(shù)據(jù)庫(kù)又專門寫一個(gè)程序,或?yàn)樵L問(wèn)MYSQL數(shù)據(jù)庫(kù)又編寫另一個(gè)程序等等,程序員只需用JDBCAPI寫一個(gè)程序就夠了,它可向相應(yīng)數(shù)據(jù)庫(kù)發(fā)送SQL調(diào)用。同時(shí),將JAVA語(yǔ)言和JDBC結(jié)合起來(lái)使程序員不必為不同的平臺(tái)編寫不同的應(yīng)用程序,只須寫一遍程序就可以讓它在任何平臺(tái)上運(yùn)行,這也是JAVA語(yǔ)言“編寫一次,處處運(yùn)行”的優(yōu)勢(shì)。24本章小結(jié)本章主要介紹了河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)所用的開(kāi)發(fā)環(huán)境、開(kāi)發(fā)工具以及相關(guān)技術(shù)。對(duì)系統(tǒng)所運(yùn)用的B/S結(jié)構(gòu)進(jìn)行了介紹,并結(jié)合本系統(tǒng)對(duì)將要使用的ECLIPSE、ORACLE開(kāi)發(fā)軟件和JSP及MVC等相關(guān)技術(shù)進(jìn)行了詳細(xì)介紹。83系統(tǒng)分析系統(tǒng)分析對(duì)于河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)的設(shè)計(jì)至關(guān)重要,在本章中對(duì)河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)進(jìn)行了需求分析、系統(tǒng)流程分析、可行性分析。31系統(tǒng)需求分析系統(tǒng)需求分析是為了深入描述系統(tǒng)的功能和性能,借助于當(dāng)前系統(tǒng)的邏輯模型導(dǎo)出目標(biāo)系統(tǒng)邏輯模型,解決目標(biāo)系統(tǒng)“做什么”的問(wèn)題。主要分為功能的需求和性能的需求。311系統(tǒng)功能的需求河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)的設(shè)計(jì)目的是方便考生及管理人員,所以其整體要求清晰實(shí)用、界面親和、操作簡(jiǎn)單、運(yùn)行流暢。系統(tǒng)應(yīng)該具備以下的基本功能用戶類別登錄系統(tǒng)的身份定為三種,一是管理員,二是教師,三是學(xué)生,只有被授權(quán)的用戶才可以使用本系統(tǒng)。權(quán)限管理系統(tǒng)需要經(jīng)過(guò)有效的身份驗(yàn)證可以登錄。用戶的身份不同,使用的系統(tǒng)資源也不同??忌豢梢詤⒓釉诰€考試;普通教師可以管理題庫(kù),控制考試、成績(jī)查詢、添加試題、閱卷等。管理員可添加、修改學(xué)生、教師、考試科目等信息,可以查詢考生成績(jī)。在線考試功能考生輸入帳號(hào)和密碼登陸系統(tǒng)后,選擇考試科目可進(jìn)行考試,科目有考試時(shí)間設(shè)置,未到考試時(shí)間或考試已結(jié)束將不能參加考試。答題中,有倒計(jì)時(shí)的功能,考試結(jié)束時(shí)還沒(méi)提交就自動(dòng)交卷,系統(tǒng)將自動(dòng)對(duì)客觀題進(jìn)行評(píng)分。如果有主觀題,能將主觀題答案返回至該科目教師頁(yè)面。試卷管理由管理員設(shè)置考試時(shí)間,教師設(shè)置題型并向題庫(kù)中添加試題,試卷隨機(jī)從題庫(kù)中抽取試題組合而成。312系統(tǒng)性能的需求河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)的性能要求在穩(wěn)定的基礎(chǔ)上快速反應(yīng),操作系統(tǒng)以WINDOWSXP或WIN7為標(biāo)準(zhǔn),硬件配置以RAM200GB為標(biāo)準(zhǔn)?;拘畔⒌奶砑?,修改部分反應(yīng)時(shí)間應(yīng)控制在3秒以內(nèi),查詢部分應(yīng)控制在5秒以內(nèi),生成試卷的信息量較大,處理的流程較多響應(yīng)時(shí)間會(huì)較慢,添加、修改部分的響應(yīng)時(shí)間不應(yīng)該太長(zhǎng)。932系統(tǒng)可行性分析可行性分析也稱為可行性研究,即是在系統(tǒng)調(diào)查的基礎(chǔ)上,針對(duì)新系統(tǒng)的開(kāi)發(fā)是否具備必要性和可能性,對(duì)新系統(tǒng)的開(kāi)發(fā)從技術(shù)、經(jīng)濟(jì)、管理的方面進(jìn)行分析和研究,以避免投資失誤,保證新系統(tǒng)的開(kāi)發(fā)成功??尚行匝芯康哪康木褪怯米钚〉拇鷥r(jià)在盡可能短的時(shí)間內(nèi)確定問(wèn)題是否能夠解決。該系統(tǒng)的可行性分析包括以下幾個(gè)方面的內(nèi)容。321經(jīng)濟(jì)可行性分析主要是對(duì)項(xiàng)目的經(jīng)濟(jì)效益進(jìn)行評(píng)價(jià),利用計(jì)算機(jī)來(lái)實(shí)現(xiàn)網(wǎng)上考試以成為適應(yīng)當(dāng)今教學(xué)管理的方式。開(kāi)發(fā)一套能滿足網(wǎng)上考試系統(tǒng)的軟件是十分必要的,實(shí)現(xiàn)試卷管理和試卷生成自動(dòng)化,在減少由于認(rèn)為失誤而早成損失的同時(shí),也可以使教師減少工作量。本系統(tǒng)在經(jīng)濟(jì)上是可以接受的,并且本系統(tǒng)實(shí)施后可以顯著提高考試效率,有助于學(xué)院完全實(shí)現(xiàn)網(wǎng)絡(luò)化管理。所以本系統(tǒng)在經(jīng)濟(jì)上是可行的。322技術(shù)可行性分析技術(shù)上的可行性分析主要分析技術(shù)條件是否能順利完成開(kāi)發(fā)工作,硬、軟件能否滿足開(kāi)發(fā)者的需要等。軟件方面,網(wǎng)絡(luò)化考試需要的各種軟件環(huán)境都已具備,數(shù)據(jù)庫(kù)方面我們選擇的ORACLE,能夠處理大量數(shù)據(jù),同時(shí)保持?jǐn)?shù)據(jù)的完整性并提供許多高級(jí)管理功能。其靈活性、安全性和易用性為數(shù)據(jù)庫(kù)編程提供了良好的條件。因此,系統(tǒng)的軟件開(kāi)發(fā)平臺(tái)已成熟可行。服務(wù)器方面服務(wù)器端由于在線考試是多人同時(shí)操作,對(duì)服務(wù)器的需求是必須考慮的問(wèn)題。根據(jù)我校在校生人數(shù),服務(wù)器要求能承受30005000人同時(shí)在線。300個(gè)并發(fā)操作響應(yīng)時(shí)間不得超過(guò)5秒。由于單純的TOMCAT支持的并發(fā)量較小。因此在實(shí)際部署系統(tǒng)時(shí)服務(wù)器端可采用APACHETOMCAT3的模式加大并發(fā)數(shù)。服務(wù)器端操作系統(tǒng)為L(zhǎng)INUX,硬件配置為8G內(nèi)存,20GHZ、8核CPU。硬件方面,科技飛速發(fā)展的今天,硬件更新的速度越來(lái)越快,容量越來(lái)越大,可靠性越來(lái)越高,價(jià)格越來(lái)越低,其硬件平臺(tái)完全能滿足此系統(tǒng)的需要。33系統(tǒng)流程分析河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)流程簡(jiǎn)單,主要是教師向題庫(kù)中添加試題,管理員設(shè)置考試科目信息,學(xué)生登錄系統(tǒng)選擇科目進(jìn)行考試。下面從業(yè)務(wù)流程和數(shù)據(jù)流程兩方面對(duì)系統(tǒng)進(jìn)行分析。10331業(yè)務(wù)流程分析業(yè)務(wù)流程分析,是對(duì)系統(tǒng)業(yè)務(wù)功能的進(jìn)一步細(xì)化,從而得到業(yè)務(wù)流程圖即TFD(TRANSACTIONFLOWDIAGRAM),是一個(gè)反映系統(tǒng)業(yè)務(wù)處理過(guò)程的“流水帳本”。圖31表示河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)核心業(yè)務(wù)流程圖。圖31系統(tǒng)業(yè)務(wù)流程圖332數(shù)據(jù)流程分析數(shù)據(jù)流程分析就是把數(shù)據(jù)在現(xiàn)行系統(tǒng)內(nèi)部的流動(dòng)情況抽象出來(lái),舍去了具體組織機(jī)構(gòu)、信息載體、處理工作等物理組成,單純從數(shù)據(jù)流動(dòng)過(guò)程來(lái)考察實(shí)際業(yè)務(wù)的數(shù)據(jù)處理模式。圖32表示河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)數(shù)據(jù)流程圖。11F1科目信息D1科目信息表F2試題信息S2教師D3試卷信息表S3學(xué)生D2試題信息表S1管理員添加科目P1添加試題P2查詢科目P3填寫答案P5D4答案信息表判卷打分P6D5成績(jī)信息表選擇科目P4圖32系統(tǒng)數(shù)據(jù)流程圖34本章小結(jié)軟件開(kāi)發(fā)過(guò)程中系統(tǒng)分析是很重要的一部分,為了開(kāi)發(fā)出真正滿足用戶需求的軟件產(chǎn)品,本章對(duì)系統(tǒng)進(jìn)行了詳細(xì)的分析,其中包括對(duì)系統(tǒng)的需求分析、可行性分析以及流程分析,從而能夠更全面的掌握整個(gè)系統(tǒng)的設(shè)計(jì)流程并且判斷系統(tǒng)是否可行。124系統(tǒng)設(shè)計(jì)對(duì)河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)進(jìn)行詳細(xì)的系統(tǒng)分析之后,需要對(duì)其進(jìn)行功能模塊和數(shù)據(jù)庫(kù)的設(shè)計(jì)。在本章中,我將會(huì)對(duì)即將開(kāi)發(fā)的河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)進(jìn)行詳細(xì)設(shè)計(jì)。41系統(tǒng)總體規(guī)劃河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)按用戶角色分為三大模塊管理員模塊實(shí)現(xiàn)教師信息,學(xué)生信息,考試科目信息的添加、修改、刪除、查詢等功能;教師模塊實(shí)現(xiàn)題庫(kù)管理、試卷管理、學(xué)生成績(jī)查詢等;學(xué)生模塊包括查詢考試科目、開(kāi)始考試、個(gè)人成績(jī)查詢等功能。對(duì)于河南財(cái)經(jīng)政法大學(xué)在線考試統(tǒng)進(jìn)行整體功能分析之后,可以設(shè)計(jì)出該系統(tǒng)的功能模塊總體框架如圖41所示圖41系統(tǒng)總體規(guī)劃圖13三種角色通過(guò)同一登錄界面進(jìn)入不同操作頁(yè)面其中管理員帳號(hào)和密碼由系統(tǒng)后臺(tái)添加。教師和學(xué)生帳號(hào)和密碼由管理員添加,個(gè)人不能注冊(cè)。1管理員1學(xué)生信息管理管理每個(gè)學(xué)生的個(gè)人信息,包括學(xué)號(hào)、姓名、院系、專業(yè)、班級(jí)等。管理員可以對(duì)學(xué)生信息進(jìn)行添加、修改、刪除、查詢等操作。并且可以查詢所有考生的考試成績(jī)。2教師信息管理管理每個(gè)教師的個(gè)人信息,包括工號(hào)、院系、所教科目等。管理員可以對(duì)教師信息進(jìn)行添加、修改、刪除、查詢等操作。3考試信息管理管理考試安排,包括考試科目、考試日期、考試開(kāi)始時(shí)間、考試結(jié)束時(shí)間等。管理員可以對(duì)考試科目進(jìn)行添加、修改、刪除、查詢等操作。2教師1題庫(kù)管理題型包括選擇題、填空題、問(wèn)答題。教師可以對(duì)各種題型進(jìn)行增加、修改、刪除、查詢。添加試題時(shí)可以設(shè)置試題難度。教師只能對(duì)所教科目的題庫(kù)進(jìn)行操作。2試卷管理可以設(shè)置考試題型,包括各種題型的數(shù)目和每道題的分值。如果出問(wèn)答題,則可查詢到學(xué)生的答案,進(jìn)行手工批改,并提交成績(jī)至數(shù)據(jù)庫(kù)。3成績(jī)查詢教師可以查看可以查詢所教科目的學(xué)生成績(jī)。3學(xué)生1考試科目可以顯示全部考試科目,考生也可以根據(jù)關(guān)鍵字搜索想要考試的科目??颇坑袝r(shí)間設(shè)置,未到考試時(shí)間或考試已結(jié)束將不能參加考試。2考試進(jìn)行從考試科目頁(yè)面進(jìn)入考試頁(yè)面,考試頁(yè)面按照教師所設(shè)置的考試題型以及題目的難度隨機(jī)生成試卷并顯示考試倒計(jì)時(shí)。3成績(jī)查詢考生可以查詢考試過(guò)的科目的成績(jī),包括各種題型的成績(jī)以及總成績(jī)。42數(shù)據(jù)庫(kù)設(shè)計(jì)421概念結(jié)構(gòu)設(shè)計(jì)概念結(jié)構(gòu)設(shè)計(jì)的任務(wù)是在系統(tǒng)分析的基礎(chǔ)上,按照特定的方法把它們抽象為一個(gè)不依賴于任何具體機(jī)器的數(shù)據(jù)模型,即概念模型。概念模型使設(shè)計(jì)者的注意力能夠從復(fù)雜的實(shí)現(xiàn)細(xì)節(jié)中解脫出來(lái),而只集中在最重要的信息的組織結(jié)構(gòu)和處理模式上。概念數(shù)據(jù)模型,是結(jié)合將要開(kāi)打的系統(tǒng)按照用戶的觀點(diǎn)來(lái)對(duì)數(shù)據(jù)和信息進(jìn)行建模,利用實(shí)體關(guān)系圖來(lái)實(shí)現(xiàn)它描述系統(tǒng)中的各個(gè)實(shí)體以及相關(guān)實(shí)體之間的關(guān)系,是系統(tǒng)特性的靜態(tài)描述概念結(jié)構(gòu)設(shè)計(jì)的方法一般是先畫出組織的局部ER圖,然后將其合并,在此基礎(chǔ)進(jìn)行優(yōu)化和美化。14在考試系統(tǒng)中,共分10個(gè)實(shí)體分別為管理員信息、教師信息、學(xué)生信息、科目信息、題庫(kù)信息(包括選擇題信息、填空題信息、問(wèn)答題信息)、試卷信息、答案信息、成績(jī)信息,它們之間相互都有聯(lián)系。由于實(shí)體數(shù)量較多,不一一畫出實(shí)體屬性ER圖,僅分別列舉說(shuō)明管理員信息(管理員帳號(hào)、管理員密碼、管理員姓名)教師信息(教職工號(hào)、教師姓名、教師密碼、所在院系、所教科目)學(xué)生信息(學(xué)生學(xué)號(hào)、學(xué)生密碼、學(xué)生姓名、學(xué)生性別、所在院系、所在專業(yè)、所在班級(jí))科目信息(科目號(hào)、科目名、所屬院系、選擇題數(shù)、填空題數(shù)、問(wèn)答題數(shù)、考試日期、開(kāi)始時(shí)間、結(jié)束時(shí)間)選擇題信息(題目編號(hào)、題目名、選項(xiàng)A、選項(xiàng)B、選項(xiàng)C、選項(xiàng)D、正確答案、難度、科目號(hào))填空題信息(題目編號(hào)、題目名、正確答案、難度、科目號(hào))問(wèn)答題信息(題目編號(hào)、題目名、參考答案、難度、科目號(hào))考生試卷信息(學(xué)號(hào)、科目號(hào)、選擇題編號(hào)、填空題編號(hào)、問(wèn)答題編號(hào))考生答案信息(學(xué)號(hào)、科目號(hào)、選擇題答案、填空題答案、問(wèn)答題答案)考生成績(jī)信息(學(xué)號(hào)、科目號(hào)、選擇題得分、填空題得分、問(wèn)答題得分、總分)各個(gè)實(shí)體之間的關(guān)系如下管理員與教師、學(xué)生、科目信息之間存在一個(gè)管理與被管理的關(guān)系,一個(gè)管理員可以管理多個(gè)教師、一個(gè)管理員可以管理多個(gè)學(xué)生、一個(gè)管理員可以管理多個(gè)考試科目。教師與科目之間存在教授與被教授的關(guān)系,一個(gè)教師可以教授多個(gè)科目;一個(gè)科目可以由多個(gè)教師來(lái)教授。教師與試卷之間有管理與被管理的關(guān)系,一個(gè)教師可以管理多個(gè)試卷。教師與題庫(kù)之間的關(guān)系也是管理與被管理的,一個(gè)教師可以管理多個(gè)題庫(kù),一個(gè)題庫(kù)可以被多個(gè)教師管理。科目與學(xué)生之間存在考試與被考試的關(guān)系,一個(gè)學(xué)生可以考試多個(gè)科目,一個(gè)科目可以由多個(gè)學(xué)生來(lái)考試;科目與試卷之間存在屬于與被屬于關(guān)系,一個(gè)科目可以屬于多份試卷,一份試卷只能屬于一個(gè)科目。試卷與學(xué)生時(shí)間存在作答與被作答的關(guān)系,一個(gè)考生一次只能作答一份試卷,一份試卷也只能被一個(gè)考生作答。題庫(kù)與試卷之間存在抽取與被抽取的關(guān)系,一個(gè)題庫(kù)可以抽取出多份試卷,一份試卷只能從一個(gè)題庫(kù)中抽取。根據(jù)以上各個(gè)實(shí)體之間的關(guān)系,可以畫出本系統(tǒng)的總體ER圖。圖42表示在線考試系統(tǒng)總體ER圖15圖42在線考試系統(tǒng)總體ER圖422邏輯結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)階段的任務(wù)是將概念結(jié)構(gòu)設(shè)計(jì)階段所得到的概念模型轉(zhuǎn)換為具體DBMS所能支持的數(shù)據(jù)模型(即邏輯結(jié)構(gòu)),并對(duì)其進(jìn)行優(yōu)化。邏輯結(jié)構(gòu)設(shè)計(jì)的主要任務(wù)是根據(jù)ER圖建立各種實(shí)體的數(shù)據(jù)庫(kù)表。數(shù)據(jù)表是關(guān)于數(shù)據(jù)信息的集合,也就是對(duì)數(shù)據(jù)流中包含的所有元素的定義的集合。任何表最主要的用途都是供人查閱對(duì)不了解的條目的解釋,數(shù)據(jù)表的作用也正是在系統(tǒng)分析和設(shè)計(jì)的過(guò)程中給人提供關(guān)于數(shù)據(jù)的描述信息。以下一一列出本系統(tǒng)所使用的各個(gè)數(shù)據(jù)庫(kù)表如表41所示,管理員信息表TB_ADMIN用于存儲(chǔ)管理員信息。表41管理員信息表列名含義類別長(zhǎng)度是否為空約束ADMINID管理員帳號(hào)CHAR6否主鍵APASSWORD密碼VARCHAR210否ANAME姓名VARCHAR220否16如表42所示,教師信息表TB_TEACHER用于存儲(chǔ)教師信息。表42教師信息表列名含義類別長(zhǎng)度是否為空約束TEACHERID教職工號(hào)NUMBER6否主鍵TPASSWORD密碼VARCHAR210否TNAME姓名VARCHAR220否DEPART院系VARCHAR230否如表43所示,學(xué)生信息表TB_USER用于存儲(chǔ)學(xué)生信息。表43學(xué)生信息表列名含義類別長(zhǎng)度是否為空約束USERID學(xué)號(hào)NUMBER11否主鍵UPASSWORD密碼VARCHAR211否UNAME姓名VARCHAR220否USEX性別CHAR2否DEPART院系VARCHAR250否MAJOR專業(yè)VARCHAR250否CLASSID班級(jí)號(hào)NUMBER6否STATE狀態(tài)NUMBER2否如表44所示,選擇題信息表TB_SELECT用于存儲(chǔ)選擇題信息。表44選擇題信息表列名含義類別長(zhǎng)度是否為空約束SELECTID題目編號(hào)NUMBER10否主鍵STITLE題目名VARCHAR21000否SELECTA選項(xiàng)AVARCHAR21000否SELECTB選項(xiàng)BVARCHAR21000否SELECTC選項(xiàng)CVARCHAR21000否SELECTD選項(xiàng)DVARCHAR21000否RANSWER正確答案VARCHAR24否DIFFICULTY難度CHAR4否SUBJECTID科目號(hào)NUMBER6否外鍵17如表45所示,填空題信息表TB_BLANK用于存儲(chǔ)填空題信息。表45填空題信息表列名含義類別長(zhǎng)度是否為空約束BLANKID題目編號(hào)NUMBER10否主鍵BTITLE題目名VARCHAR21000否RANSWER正確答案VARCHAR2100否DIFFICULTY難度CHAR4否SUBJECTID科目號(hào)NUMBER6否外鍵如表46所示,問(wèn)答題信息表TB_QUESTION用于存儲(chǔ)問(wèn)答題信息。表46問(wèn)答題信息表列名含義類別長(zhǎng)度是否為空約束QUESTIONID題目編號(hào)NUMBER10否主鍵QTITLE題目名CLOB否RANSWER正確答案CLOB否DIFFICULTY難度CHAR4否SUBJECTID科目號(hào)NUMBER6否外鍵如表47所示,考試科目信息表TB_SUBJECT用于存儲(chǔ)考試科目信息。表47考試科目信息表列名含義類別長(zhǎng)度是否為空約束SUBJECTID科目號(hào)NUMBER6否主鍵SNAME科目名VARCHAR250否TEACHERID教職工號(hào)NUMBER6否主鍵,外鍵EXAMDATE考試日期DATE否EXAMSTART開(kāi)始時(shí)間DATE否EXAMEND結(jié)束時(shí)間DATE否SNUMBERE易選擇題數(shù)NUMBER3否SNUMBERH難選擇題數(shù)NUMBER3否BNUMBERE易填空題數(shù)NUMBER3否BNUMBERH難填空題數(shù)NUMBER3否QNUMBERE易問(wèn)答題數(shù)NUMBER3否QNUMBERH難問(wèn)答題數(shù)NUMBER3否18如表48所示,考生試卷信息表TB_EXAM用于存儲(chǔ)考生試卷信息。表48考生試卷信息表列名含義類別長(zhǎng)度是否為空約束USERID學(xué)號(hào)NUMBER11否主鍵,外鍵SUBJECTID科目號(hào)NUMBER6否主鍵,外鍵ALLSID選擇題編號(hào)VARCHAR21000否ALLBID填空題編號(hào)VARCHAR21000否ALLQID問(wèn)答題編號(hào)VARCHAR21000否如表49所示,考生答案信息表TB_ANSWER用于存儲(chǔ)考生答案信息。表49考生答案信息表列名含義類別長(zhǎng)度是否為空約束USERID學(xué)號(hào)NUMBER11否主鍵,外鍵SUBJECTID科目號(hào)NUMBER6否主鍵,外鍵ALLSANS選擇題答案VARCHAR2300否ALLBANS填空題答案VARCHAR2500否ALLQANS問(wèn)答題答案CLOB否如表410所示,考生成績(jī)信息表TB_SCORE用于存儲(chǔ)考生成績(jī)信息。表410考生成績(jī)信息表列名含義類別長(zhǎng)度是否為空約束USERID學(xué)號(hào)NUMBER11否主鍵,外鍵SUBJECTID科目號(hào)NUMBER6否主鍵,外鍵SSELECT選擇題得分NUMBER4否SBLACK填空題得分NUMBER4否SQUESTION問(wèn)答題得分NUMBER4否STOTAL總分NUMBER4否43本章小結(jié)本章對(duì)河南財(cái)經(jīng)政法大學(xué)排課系統(tǒng)進(jìn)行了功能設(shè)計(jì),將該系統(tǒng)分為管理員、教師和學(xué)生三個(gè)模塊。同時(shí)對(duì)該系統(tǒng)進(jìn)行了數(shù)據(jù)庫(kù)設(shè)計(jì),畫出了各個(gè)實(shí)體之間的ER圖,共設(shè)計(jì)了10個(gè)數(shù)據(jù)庫(kù)表。195系統(tǒng)實(shí)施經(jīng)過(guò)一系列的準(zhǔn)備,對(duì)于系統(tǒng)的分析、設(shè)計(jì)已經(jīng)完成。以下開(kāi)始對(duì)河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)進(jìn)行詳細(xì)設(shè)計(jì),即系統(tǒng)實(shí)施。51創(chuàng)建與數(shù)據(jù)庫(kù)的連接本系統(tǒng)采用JDBC連接方式與ORACLE建立連接,其步驟是首先加載數(shù)據(jù)庫(kù)驅(qū)動(dòng)并獲得與數(shù)據(jù)庫(kù)的連接,然后使用DRIVERMANAGER建立連接。DRIVERMANAGER類是JDBC的管理層,作用于用戶和驅(qū)動(dòng)程序之間,它跟蹤可用的驅(qū)動(dòng)程序,并在數(shù)據(jù)庫(kù)和相應(yīng)的驅(qū)動(dòng)程序之間建立連接。下面是本系統(tǒng)與ORACLE數(shù)據(jù)庫(kù)建立連接的代碼PUBLICCLASSCONNECTDBPRIVATEFINALSTRINGDRIVER“ORACLEJDBCDRIVERORACLEDRIVER“PRIVATEFINALSTRINGURL“JDBCORACLETHINLOCALHOST1521ORCL“PRIVATEFINALSTRINGUSERNAME“SCOTT“PRIVATEFINALSTRINGPASSWORD“TIGER“PRIVATECONNECTIONCONNECTIONNULL/構(gòu)造函數(shù)中加載驅(qū)動(dòng)PUBLICCONNECTDBTRYCLASSFORNAMEDRIVERCATCHEXCEPTIONESYSTEMOUTPRINTLN“加載驅(qū)動(dòng)失敗“/創(chuàng)建連接PUBLICCONNECTIONCREATECONNECTIONTRYCONNECTIONDRIVERMANAGERGETCONNECTIONURL,USERNAME,PASSWORDCATCHEXCEPTIONESYSTEMOUTPRINTLN“創(chuàng)建連接失敗“RETURNCONNECTION2052系統(tǒng)的登錄頁(yè)面用戶登錄頁(yè)面主要功能是系統(tǒng)根據(jù)用戶選擇的不同身份對(duì)用戶輸入的用戶名和密碼進(jìn)行驗(yàn)證。當(dāng)用戶單擊“登錄”按鈕時(shí),首先是JAVASCRIPT腳本驗(yàn)證輸入格式是否正確,不符合格式會(huì)給出提示。其次是后臺(tái)驗(yàn)證,如果不正確,跳轉(zhuǎn)到錯(cuò)誤頁(yè)面,并提示用戶重新登錄。如果正確,則根據(jù)用戶不同身份進(jìn)入相應(yīng)頁(yè)面使用系統(tǒng)。如果輸入信息錯(cuò)誤,可以單擊“重置”按鈕,重新輸入信息;圖51表示河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)登錄界面。圖51河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)登錄頁(yè)面下面是登錄過(guò)程的主要代碼LOGINSERVLETJAVA中主要代碼PUBLICCLASSLOGINSERVLETEXTENDSHTTPSERVLETPRIVATESTATICFINALLONGSERIALVERSIONUID1LPUBLICLOGINSERVLETSUPERPROTECTEDVOIDDOGETHTTPSERVLETREQUESTREQUEST,HTTPSERVLETRESPONSERESPONSETHROWSSERVLETEXCEPTION,IOEXCEPTIONDOPOSTREQUEST,RESPONSE21PROTECTEDVOIDDOPOSTHTTPSERVLETREQUESTREQUEST,HTTPSERVLETRESPONSERESPONSETHROWSSERVLETEXCEPTION,IOEXCEPTIONSTRINGIDREQUESTGETPARAMETER“USER“STRINGPWDREQUESTGETPARAMETER“PASSWORD“STRINGROLEREQUESTGETPARAMETER“RADIO“CONNLOGINCLGNEWCONNLOGINSTRINGPWDFROMDBNULLSTRINGSQL“IFROLEEQUALS“STUDENT“SQL“SELECTUPASSWORDFROMTB_USERWHEREUSERID“ELSEIFROLEEQUALS“TEACHER“SQL“SELECTTPASSWORDFROMTB_TEACHERWHERETEACHERID“ELSEIFROLEEQUALS“ADMIN“SQL“SELECTAPASSWORDFROMTB_ADMINWHEREADMINID“TRYPWDFROMDBCLGGETUSERPASSWORDID,SQLCATCHEXCEPTIONEEPRINTSTACKTRACEIFPWDEQUALSPWDFROMDBIFROLEEQUALS“STUDENT“REQUESTDISPATCHERRDREQUESTGETREQUESTDISPATCHER“HTML/STUDENT/HOMEPAGEJSP“RDFORWARDREQUEST,RESPONSEELSEIFROLEEQUALS“TEACHER“REQUESTDISPATCHERRDREQUESTGETREQUESTDISPATCHER“HTML/TEACHER/TEACHERMANAGERJSP“RDFORWARDREQUEST,RESPONSEELSEIFROLEEQUALS“ADMIN“REQUESTDISPATCHERRDREQUESTGETREQUESTDISPATCHER“HTML/ADMIN/ADMINMANAGERJSP“22RDFORWARDREQUEST,RESPONSEELSERESPONSESENDREDIRECT“ERRORJSP“53學(xué)生主頁(yè)面學(xué)生在河南財(cái)經(jīng)政法大學(xué)在線考試系統(tǒng)登錄頁(yè)面輸入自己的用戶名和密碼并點(diǎn)選學(xué)生按鈕,進(jìn)入學(xué)生主頁(yè)面。學(xué)生主頁(yè)面默認(rèn)顯示一些考試須知等信息。通過(guò)主頁(yè)面菜單可進(jìn)入查詢考試科目、開(kāi)始考試、查詢考試成績(jī)等各個(gè)功能頁(yè)面。531考試科目查詢通過(guò)點(diǎn)擊考生主頁(yè)面上方菜單中的“在線考試”,即可菜單下方出現(xiàn)各科考試的時(shí)間等詳細(xì)信息。系統(tǒng)默認(rèn)顯示全部考試科目信息,學(xué)生也可通過(guò)輸入關(guān)鍵字查詢考試科目。圖52表示學(xué)生操作頁(yè)面的考試科目查詢頁(yè)面。圖52考試科目查詢頁(yè)面532進(jìn)行考試考生通過(guò)點(diǎn)擊開(kāi)始考試按鈕可以進(jìn)入到相應(yīng)的考試科目頁(yè)面,考試頁(yè)面顯示考生姓名和學(xué)號(hào),考試科目,考試時(shí)長(zhǎng),試卷總分等信息。考試頁(yè)面是整個(gè)系統(tǒng)23的精華部分,頁(yè)面信息量大。因此對(duì)此頁(yè)面的編寫耗時(shí)最長(zhǎng)。圖53表示JAVA程序設(shè)計(jì)的試卷頁(yè)面。圖53考生考試頁(yè)面考試頁(yè)面主要由兩部分組成,一是試題部分,位于頁(yè)面中間;二是導(dǎo)航部分(如圖53中所示)位于頁(yè)面右上方固定位置。在答題過(guò)程中如果考生某題已作答則答案區(qū)域和該題的導(dǎo)航數(shù)字區(qū)域?qū)?huì)由白色變?yōu)榛疑蝗绻忌鷮?duì)某題目有疑問(wèn),不敢肯定答案,則可以點(diǎn)擊答案選項(xiàng)右邊的“問(wèn)號(hào)”按鈕,此時(shí)該題答案區(qū)域和導(dǎo)航數(shù)字區(qū)域?qū)?huì)變?yōu)榧t色;考生可以點(diǎn)擊導(dǎo)航區(qū)域的數(shù)字定位到相應(yīng)題目的位置;在導(dǎo)航區(qū)域下方顯示考試倒計(jì)時(shí),如果不想看導(dǎo)航,則可以點(diǎn)擊導(dǎo)航左上角按鈕隱藏導(dǎo)航。當(dāng)考試剩余5分鐘時(shí)系統(tǒng)會(huì)彈出溫馨提示框(如圖54所示)題型考生及時(shí)檢查沒(méi)有做完的題目,準(zhǔn)備提交試卷。圖54溫馨提示框當(dāng)考試時(shí)間到的時(shí)候系統(tǒng)會(huì)彈出考試時(shí)間到的提示框(如圖55所示),此時(shí)系統(tǒng)已自動(dòng)將考生以作答的試題答案保存并提交。24圖55考試時(shí)間到提示框下面是考試頁(yè)面試題生成的主要代碼EXAMJSP頁(yè)面選擇題生成主要代碼SESSIONGETATTRIBUTE“LIST“FORINTI0I第“題A、B、C、D、“CLASS“ANSWER“【選擇答案】“ID“RADIO“VALUE“A“ONCLICK“MARKGREY“/A25“ID“RADIO1“VALUE“B“ONCLICK“MARKGREY“/B“ID“RADIO2“VALUE“C“ONCLICK“MARKGREY“/C“ID“RADIO3“VALUE“D“ONCLICK“MARKGREY“/D/PIC/MARK2JPG“TITLE“有疑問(wèn),拿不定答案,標(biāo)記一下,待會(huì)再做“ONCLICK“MARKRED“/CONNSELECTJAVA中的代碼PUBLICCLASSCONNSELECTPRIVATECONNECTDBCONNECTDBPRIVATECONNECTIONCONNECTIONNULLPRIVATEPREPAREDSTATEMENTPREPAREDSTATEMENTNULLPRIVATERESULTSETRSNULLPUBLICLISTSERCHSELECTSTRINGSQL“CONNECTDBNEWCONNECTDBCONNECTIONCONNECTDBCREATECONNECTIONLISTLISTNEWARRAYLISTSQL“SELECTQUESTIONTITLE,SELECTA,SELECTB,SELECTC,SELECTDFROMSELECTFROMTB_SELECTORDERBYDBMS_RANDOMVALUEWHEREROWNUM20“TRYPREPAREDSTATEMEN

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論