版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 畢業(yè)設計論文</b></p><p> 論文題目:基于B/S模式的Java在線考試系統(tǒng)的設計與實現(xiàn)</p><p><b> 目錄</b></p><p><b> 1 緒論I</b></p><p> 1.1 課題研究背景3<
2、/p><p> 1.2 國內外發(fā)展現(xiàn)狀4</p><p><b> 2 需求分析6</b></p><p><b> 2.1問題分析6</b></p><p><b> 2.2任務概述6</b></p><p> 2.3功能需求概述6&
3、lt;/p><p><b> 2.4項目目的7</b></p><p><b> 2.5方案選擇7</b></p><p><b> 2.6運行環(huán)境9</b></p><p> 3 系統(tǒng)的總體設計10</p><p> 3.1 指導思想1
4、0</p><p> 3.1.1 B/S結構開發(fā)思想10</p><p> 3.1.2面向對象機制的設計思想10</p><p> 3.1.3代碼分層思想11</p><p> 3.2功能需求分析11</p><p> 3.3系統(tǒng)總體設計11</p><p> 3.3.1系
5、統(tǒng)管理模塊13</p><p> 3.3.2 試題模塊設計14</p><p> 3.3.2教師管理模塊14</p><p> 3.3.3在線考試模塊15</p><p> 3.4數(shù)據(jù)庫的設計17</p><p> 3.4.1 數(shù)據(jù)庫介紹17</p><p> 3.4.2
6、 數(shù)據(jù)詞典分析17</p><p> 4 系統(tǒng)的功能實現(xiàn)19</p><p> 4.1系統(tǒng)流程的實現(xiàn)19</p><p> 4.2系統(tǒng)模塊功能的實現(xiàn)方法19</p><p> 4.2.1數(shù)據(jù)庫連接頁面19</p><p> 4.2.2系統(tǒng)登錄頁面20</p><p> 4
7、.2.3題庫管理頁面22</p><p> 4.2.4待考頁面23</p><p> 4.2.5考試頁面24</p><p> 4.2.6在線評分頁面26</p><p> 4.2.7后臺管理頁面27</p><p> 4.2.8學生賬號管理頁面28</p><p><
8、;b> 結束語29</b></p><p><b> 致謝30</b></p><p><b> 參考文獻31</b></p><p><b> 摘要</b></p><p> 在線考試系統(tǒng)旨在實現(xiàn)考試的無紙化管理,對一些科目的考試可以通過互聯(lián)
9、網(wǎng)絡或局域網(wǎng)進行,方便校方考務的管理,也方便了考生,尤其適合考生分布廣,不易集中的遠程教育。</p><p> 本論文主要開發(fā)系統(tǒng)的后臺管理系統(tǒng)—Java在線考試管理子系統(tǒng),它包括試題管理、考生管理、在線制作試卷、控制學生考試的設置、試卷審批等功能。本論文主要介紹了對Java在線考試管理子系統(tǒng)的分析、設計和開發(fā)的全部過程。運用ER圖,程序流程圖等對在線管理子系統(tǒng)的設計過程進行詳細的說明。全文共分為緒論、需求分析
10、、系統(tǒng)的總體設計、系統(tǒng)的功能實現(xiàn)四部分。</p><p> 以就業(yè)為導向,以能力培養(yǎng)為主線,運用現(xiàn)代網(wǎng)絡技術構建新型高級技能型人才培養(yǎng)平臺,實現(xiàn)課程在線考試的公平性和安全性?;赪eb技術的網(wǎng)絡考試系統(tǒng)可以借助于遍布全球的因特網(wǎng)進行,因此考試既可以在本地進行,也可以在異地進行,大大拓展了考試的靈活性。目前許多國際著名的計算機公司所舉辦的各種認證考試絕大部分采用這種方式,基于Web的考試系統(tǒng)設計是現(xiàn)階段網(wǎng)絡課程研
11、究開發(fā)的一個熱點。本論文以“基于Web技術的Java程序設計課程考試系統(tǒng)”網(wǎng)站建設為背景,展開在線網(wǎng)絡考試系統(tǒng)的討論,實現(xiàn)對各種傳統(tǒng)考試的改革。</p><p> 關鍵詞:JSP,Java,Mysql數(shù)據(jù)庫,B/S模式</p><p><b> Abstract</b></p><p> On-line examination syste
12、m the aim is carry out examination of have no the paper turn a management, can carry on through Internet net or bureau area net to some examinations of categories, convenient school square test the management of duty, al
13、so convenient the examinee is particularly suitable for examinee to distribute widely and not easily concentrated of long range education.</p><p> I mainly develop the system-Java of the backstage managemen
14、t's on-line examination management sub- system of system and it includes to try the management, on-line creation of a management, examinee to try book, control the constitution that the student examine and try an exa
15、mination and approval etc. function.This thesis mainly introduced to manage the analysis, design of the sub- system and all processes of the development to Java's on-line examination.Make use of ER diagram, procedure
16、 flow cha</p><p> Employment-oriented training to the main line capacity, use modern network technology Construction of a New High-skilled personnel-training platform achieve a fair examination, the answer
17、to safety. Therefore, will select the network test method will be later take a test the development tendency? May draw support based on the Web technology network test system in proliferates global the Internet to carry
18、on, therefore takes a test already may in local carry on, also may in different carry on, ha</p><p> Keywords:JSP, Java,databases of the Mysql, mode of B/S</p><p><b> 1 緒論</b></
19、p><p> 近幾年來,隨著Internet的崛起,遠程教育開始發(fā)展,普及網(wǎng)絡教育的呼聲日益高漲,其勢頭不亞于電子商務。聯(lián)合國教科文組織1998年在其一項調查報告中指出:無論是發(fā)達國家還是發(fā)展中國家,都不同程度存在教育滯后于現(xiàn)實需要的問題,特別是第三世界國家。而普及遠程教育,尤其是網(wǎng)絡教育,不僅是解決這一問題的有效途徑,而且將成為革新傳統(tǒng)教育模式的重要動力。中國的網(wǎng)絡教育也隨Internet的發(fā)展而同步增長,同時,
20、網(wǎng)絡教育也為中國的教育事業(yè)開辟了新的天地。</p><p> 1.1 課題研究背景</p><p> 隨著網(wǎng)絡技術的飛速發(fā)展,現(xiàn)在很多國外的大學和社會其他部門都已經(jīng)開設了遠程教育,通過計算機網(wǎng)絡實現(xiàn)異地教育和培訓。但是,遠程教育軟件的開發(fā)目前還處于起步階段,隨著這項技術的不斷深入發(fā)展,就要求有更好、更完善的軟件系統(tǒng)應用到遠程教育當中去,這就給軟件設計人員提出了更高的設計要求。<
21、/p><p> 遠程教育包括很多環(huán)節(jié),例如教學系統(tǒng)、答疑系統(tǒng)和考試系統(tǒng)等等。</p><p> (1)其中很重要的一個環(huán)節(jié)就是在線考試系統(tǒng),同時它也是最難實現(xiàn)的環(huán)節(jié)。在我國,雖然遠程教育已經(jīng)蓬勃地發(fā)展起來,但是目前學校與社會上的各種考試大都采用傳統(tǒng)的考試方式,在此方式下,組織一次考試至少要經(jīng)過五個步驟,即人工出題、考生考試、人工閱卷、成績評估和試卷分析。</p><p&
22、gt; (2)顯然,隨著考試類型的不斷增加及考試要求的不斷提高,教師的工作量將會越來越大,并且其工作將是一件十分煩瑣和非常容易出錯的事情,可以說傳統(tǒng)的考試方式已經(jīng)不能適應現(xiàn)代考試的需要。隨著計算機應用的迅猛發(fā)展,網(wǎng)絡應用不斷擴大,如遠程教育和虛擬大學的出現(xiàn)等等,且這些應用正逐步深入到千家萬戶。人們迫切要求利用這些技術來進行在線考試,以減輕教師的工作負擔及提高工作效率,與此同時也提高了考試的質量,從而使考試更趨于公證、客觀,更加激發(fā)學生
23、的學習興趣。</p><p> (3)例如目前許多國際著名的計算機公司所舉辦的各種認證考試絕大部分采用這種方式。</p><p> 伴隨著遠程教育的蓬勃發(fā)展,作為教學當中不可分割的一部分的在線考試系統(tǒng)也得到了當今遠程教育研究者的關注,考試是考察學生對所學習知識的接受和理解程度的重要手段,無紙化的考卷,考試的隨時性,隨地性,這些特點都是研究并開發(fā)網(wǎng)絡考試系統(tǒng)主要的原因,網(wǎng)絡考試系統(tǒng)遠遠超
24、越了傳統(tǒng)考試固定時間,固定地點的考試模式的限制,將給學生和老師帶來極大的便利。隨著Internet的相關技術的發(fā)展,特別是Web技術的出現(xiàn),人們開始致力于研究和開發(fā)基于Internet考試系統(tǒng),這也大大推動了遠程教育的發(fā)展。</p><p> 如今世界上對于基于Internet的遠程考試系統(tǒng)所進行的研究開發(fā)工作不是很長,但是基于Web技術構建的在線考試系統(tǒng)已然成為發(fā)展的主流。數(shù)據(jù)庫安全、共享、數(shù)據(jù)傳輸過程的安全
25、性、訪問控制技術、身份識別技術都是構建考試系統(tǒng)要考慮的問題。 </p><p> (4)目前,一些遠程教育機構已經(jīng)開發(fā)出了在線考試系統(tǒng),基本實現(xiàn)了基于Internet的B/S結構在線考試。通過Server端的后臺試題庫動態(tài)生成考卷和對于標準化的試題即時評定成績。但是與傳統(tǒng)的紙面考試相比,目前的在線測試都是基于標準化考試的,而且一般只能用于非正規(guī)的考試,因為對于很多方面考慮的還不是很完善,因而使得在線考試在近段時
26、間很難完全替代傳統(tǒng)的考試。</p><p> 1.2 國內外發(fā)展現(xiàn)狀</p><p> 國際上,基于計算機的考試蓬勃發(fā)展,對于題庫建設的理論研究不斷深入,實用考試系統(tǒng)也層出不窮。美國心理協(xié)會在1986年出版了關于如何開發(fā)、使用計算機化考試以及解釋考分的指南,成為了考試和軟件開發(fā)者的事實標準。投入實際使用的例子有,1982年才有遠距離教育方式的美國學院(American College
27、)考試使用計算機進行測試;1993年美國教育考試中心(Eraduade Record Examination簡稱 ETS)考試;從1994年開始,美國護理證書考試完全在計算機上進行。目前,國外許多大型測驗出版機構、地區(qū)教育主管部門和專業(yè)資格認證機構都以某種測量理論為指導建立題庫、設計考試系統(tǒng),并進行各項相關研究。</p><p> 除了這類行業(yè)專用的大型考試系統(tǒng)之外,供普通教師使用的通用考試系統(tǒng)軟件也有相應的研
28、究和產品。如英國Question Mark Computing,Ltd公司出品的Question Mark,就是一種基于項目反應理論的,可供廣大教師使用的通用的考試系統(tǒng)。</p><p> 在我國,計算機考試系統(tǒng)和題庫的理論研究和實踐應用起步比較晚。但發(fā)展也比較迅速,研究和開發(fā)活動比較活躍。北京師范大學、華北師范大學等高等院校都有教師在進行教育測量理論應用于題庫建設方面的研究。清華大學、上海交通大學、北京師范大
29、學等高校,也有教師在組織力量致力于實用考試系統(tǒng)的研究和開發(fā)工作。</p><p> (1)我國的專用考試系統(tǒng)主要針對計算機考試,其他行業(yè)和科目的考試系統(tǒng)太少。</p><p> (2)計算機在線考試系統(tǒng)由于操作類題目自動出題有較大的難度,基本沒有實現(xiàn)題庫化的管理。</p><p> (3)系統(tǒng)對傳統(tǒng)的客觀題雖然一般建有題庫但不大,多采用隨機抽題組卷的方式,缺乏
30、教育測量理論作為依據(jù)。</p><p> (4)考試完成后,分數(shù)和試題統(tǒng)計分析比較簡單,沒有充分挖掘數(shù)據(jù)所包含的信息。</p><p> (5)通過考試系統(tǒng)或題庫系統(tǒng)對最終用戶即教師的需求分析做的不夠透徹,忽略老師們渴望能自由地操縱試題庫的需求,沒有完全實現(xiàn)用戶自主初始化試題庫、自主維護試題庫、自主調用試題庫的功能。加上軟件實用水平和商品化工作方面的不足。通用系統(tǒng)并沒有被廣大教師認可和
31、使用。</p><p><b> 2 需求分析</b></p><p><b> 2.1問題分析</b></p><p> 傳統(tǒng)的學校教學中,進行一場考試,要求老師刻試卷、印試卷、安排考試、監(jiān)考、收集試卷、評改試卷、講評試卷和分析試卷,這是一個繁雜的過程,需要大量人力、物力與時間的投入,已經(jīng)越來越不適應學校信息化建設
32、與現(xiàn)代教學的需要。尤其在遠程網(wǎng)絡教學中,學生分布廣,不易統(tǒng)一集中安排考試,給校方和學生帶來了眾多的不便。而在線考試系統(tǒng),正是信息化建設的產物,它是傳統(tǒng)考場的延伸。它可以利用互聯(lián)網(wǎng)絡和局域網(wǎng),隨時隨地的對學生進行考試,加上數(shù)據(jù)庫技術的利用,大大簡化了傳統(tǒng)考試的過程,因此在線考試是電子化教學的不可缺少的輔助手段。在當今信息時代,計算機技術與網(wǎng)絡技術越來越廣地應用于各個領域,改變著人們的學習、工作、生活乃至思維方式,也引起了教育領域的重大變革
33、。將計算機與網(wǎng)絡技術應用于現(xiàn)代高等教育中,是現(xiàn)代高等教育發(fā)展的需要,也是改革教育模式,提高學校教學效果和教學效率、提高科研和管理水平的必要手段。</p><p><b> 2.2任務概述</b></p><p> 在線考試管理子系統(tǒng)主要實現(xiàn)題庫管理、考生管理、成績查詢、試卷管理等功能,充分利用計算機科學與技術,改變傳統(tǒng)的考試操作方式,實現(xiàn)無紙化考試的模式。<
34、/p><p><b> 2.3功能需求概述</b></p><p> 系統(tǒng)需要解決的主要問題:</p><p> 主要開發(fā)的是后臺管理子系統(tǒng),在此系統(tǒng)中主要對前臺考試系統(tǒng)的顯示信息進行管理和設置。子系統(tǒng)分為以下功能模塊如圖2-1所示:</p><p> 題庫管理:用于對單個試題的增、刪、查等基本維護,還可對題庫進行數(shù)
35、據(jù)備份和數(shù)據(jù)還原。針對不同題型、不同應用范圍及不同科目對試題進行維護。</p><p> 用戶管理:主要是對用戶資料的修改等。</p><p> 成績管理:對每次考試的學生成績的基本信息進行維護,并提供學生成績的統(tǒng)計管理。</p><p> 圖2-1在線考試管理子系統(tǒng)</p><p><b> 2.4項目目的</b&g
36、t;</p><p> 在線考試系統(tǒng)的總體目標:</p><p> 在線考試系統(tǒng)可以幫助教師完成一個考試從題目設計,考試安排,考試實施,考卷批改到分數(shù)統(tǒng)計總結的所有工作。</p><p> 所有的考試數(shù)據(jù)和其它數(shù)據(jù)庫需要一種主流的方式進行存儲和管理,例如使用數(shù)據(jù)庫技術。</p><p> 考試數(shù)據(jù)的存放和處理必須對考試保密,需要一定的
37、安全性保障。</p><p><b> 對考試的系統(tǒng)目標:</b></p><p> 這個軟件是分布式的,這意味著只要有考試客戶端可以連接到考試應用服務器,任何考生在任何地方進行身份確認,都能完成考試。</p><p> 穩(wěn)定性可以保證每一次考試對每一個考生是公平的,隨機性可以避免作弊的發(fā)生。</p><p>&l
38、t;b> 對教師的系統(tǒng)目標:</b></p><p> 提供一個功能全面的考核管理客戶端,可以進行考試設計和安排。</p><p> 通過管理客戶端,教師可以進行考試的身份管理。</p><p> 考生的考試結果可以被保存下來,供教師進行分析統(tǒng)計和察看。</p><p><b> 2.5方案選擇</
39、b></p><p> 開發(fā)在線考試系統(tǒng),提出以下解決方案:</p><p> 選擇Mysql作為后臺的數(shù)據(jù)庫,選擇Java,JSP,JavaScript,Html作為應用程序開發(fā)工具,運用Tomcat服務器技術,整個系統(tǒng)完全基于B/S (Browser/Server)模式進行設計。</p><p> Web應用程序開發(fā)環(huán)境—JSP技術</p>
40、;<p> JSP的全稱是Java Server Pages,它是SUN推出的一種動態(tài)網(wǎng)頁技術標準。它在傳統(tǒng)的靜態(tài)頁面文件(*.html,*.htm)中加入Java程序片段和JSP標記,就構成了JSP頁面。</p><p> JSP具有以下的優(yōu)點:</p><p> 將業(yè)務層與表示層分離:使用JSP技術,網(wǎng)絡開發(fā)人員可充分使用HTML來設計頁面顯示部分(如字體顏色等),
41、并使用JSP指令或者Java程序片段來生成網(wǎng)頁上的動態(tài)內容。</p><p> 能夠跨平臺:JSP支持絕大部分平臺,包括現(xiàn)在非常流行的Linux系統(tǒng),應用非常廣泛的Apache服務器也提供了支持JSP的服務。</p><p> 組件的開發(fā)和使用很方便:如ASP的組件是由C++,VB等語言開發(fā)的,并需要注冊才能使用;而JSP的組件是用Java開發(fā)的,可以直接使用。</p>
42、<p> 一次編寫,處處運行:作為Java開發(fā)平臺的一部分,JSP具有Java的所有優(yōu)點,包括Write once , Run everywhere。</p><p> Tomcat應用服務器</p><p> 目前支持JSP的應用服務器是較多的,Tomcat是其中較為流行的一個Web服務器,Tomcat是一個免費的開源的Serlvet容器,在Tomcat中,應用程序的部署
43、很簡單,你只需將你的WAR放到Tomcat的Webapp目錄下,Tomcat會自動檢測到這個文件,并將其解壓。你在瀏覽器中訪問這個應用的JSP時,通常第一次會很慢,因為Tomcat要將Jsp轉化為Servlet文件,然后編譯.編譯以后,訪問將會很快。</p><p><b> Mysql</b></p><p> Mysql是一個小型關系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為
44、瑞典Mysql AB公司。在2008年1月16號被Sun公司收購。目前Mysql被廣泛地應用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了Mysql作為網(wǎng)站數(shù)據(jù)庫。</p><p><b> B/S 開發(fā)模式</b></p><p> 伴隨著Internet的迅速發(fā)展
45、,計算機技術正在由基于C/S(Client/ Server)模式的應用系統(tǒng)轉變?yōu)榛贐/S模式的應用系統(tǒng)。</p><p> B/S模式帶來了巨大的好處:</p><p> 開發(fā)成本及維護成本降低.由于B/S架構管理軟件只安裝在服務器端(Server)上,即應用程序在部署,升級,維護時,只需要在服務器端進行配置就可以了,網(wǎng)絡管理人員只需要管理服務器就行了,用戶界面主要事務邏輯在服務器(
46、Server)端完全通過WWW瀏覽器實現(xiàn),極少部分事務邏輯在前端(Browser)實現(xiàn),所有的客戶端只有瀏覽器,網(wǎng)絡管理人員只需要做硬件維護。</p><p><b> 2.6運行環(huán)境</b></p><p> (1)硬件需求: PIII/256M/10G 及以上配置,要求為考試系統(tǒng)分配足夠的數(shù)據(jù)庫磁盤空間。</p><p> (2)推薦
47、配置:PIV 2G/512M/40G。</p><p> (3)操作系統(tǒng)需求:Windows2000及以上操作系統(tǒng) 。</p><p> (4)數(shù)據(jù)庫軟件需求:Mysql中文版數(shù)據(jù)庫。</p><p> (5)件軟件需求:Tomcat系列服務器。</p><p><b> 3 系統(tǒng)的總體設計</b></p&
48、gt;<p><b> 3.1 指導思想</b></p><p> 3.1.1 B/S結構開發(fā)思想</p><p> B/S(Browser/Server)結構即瀏覽器和服務器結構。它是隨著Internet技術的興起,對C/S結構的一種變化或者改進的結構。在這種結構下,用戶工作界面是通過WWW瀏覽器來實現(xiàn),極少部分事務邏輯在前端(Browser)實
49、現(xiàn),但是主要事務邏輯在服務器端(Server)實現(xiàn),形成所謂三層(3-tier)結構。一個三層架構的應用程序由三部分組成,這三部分各自分布在網(wǎng)絡中的不同地方。這三個部分分別是:工作站或表示層接口、事務邏輯、數(shù)據(jù)庫以及與其相關的程序設計。在一個典型的三層架構應用程序中,應用程序的用戶工作站包括提供圖形用戶界面(GUI)的程序設計和具體的應用程序入口表格或交互式窗口。</p><p> 事務邏輯處在局域網(wǎng)(LAN)
50、服務器或其他共享主機上,它作為響應工作站所發(fā)出客戶請求的服務器,而相對于處于大型機的第三層它是作為客戶端,并且決定需要什么數(shù)據(jù)以及數(shù)據(jù)存儲在哪里。第三層包括數(shù)據(jù)庫以及處理讀寫以及訪問數(shù)據(jù)庫的程序。然而應用程序的設計可能比這個架構要復雜,對于大型程序來說,這個三層模式是一種比較簡便的考慮方法。</p><p> 這種應用程序的設計使用客戶/服務器模式,各層可以同時開發(fā),并且可以由不同的成員組用不同的語言來開發(fā)。因
51、為各個層次的開發(fā)不會影響其他層次,所以這種模型對于進一步開發(fā)軟件是很方便的。這樣就大大簡化了客戶端電腦載荷,減輕了系統(tǒng)維護與升級的成本和工作量,降低了用戶的總體成本(TCO)。以目前的技術看,局域網(wǎng)建立B/S結構的網(wǎng)絡應用,并通過Internet/Intranet模式下數(shù)據(jù)庫應用,相對易于把握、成本也是較低的。它是一次性到位的開發(fā),能實現(xiàn)不同的人員,從不同的地點,以不同的接入方式(比如LAN, WAN, Internet/Intrane
52、t等)訪問和操作共同的數(shù)據(jù)庫;它能有效地保護數(shù)據(jù)平臺和管理訪問權限,服務器數(shù)據(jù)庫也很安全。特別是在JAVA這樣的跨平臺語言出現(xiàn)之后,B/S架構管理軟件更是方便、快捷、高效。</p><p> 3.1.2面向對象機制的設計思想</p><p> 所有計算機均由兩種元素組成:代碼和數(shù)據(jù)。精確的說,有些程序是圍繞著“什么正在發(fā)生”而編寫,有些則是圍繞“誰正在受影響”而編寫的。</p&g
53、t;<p> 第一種編程方式叫做“面向過程的模型” ,按這種模型編寫的程序以一系列的線性步驟(代碼)為特征,可被理解為作用于數(shù)據(jù)的代碼。如C等過程化語言。</p><p> 第二種編程方式叫做“面向對象的模型” ,按這種模型編寫的程序圍繞著程序的數(shù)據(jù)(對象)和針對該對象而嚴格定義的接口來組織程序,它的特點是數(shù)據(jù)控制代碼的訪問。通過把控制權轉移到數(shù)據(jù)上,面向對象的模型在組織方式上有:抽象、封裝、繼
54、承和多態(tài)的好處。</p><p> 在系統(tǒng)開發(fā)過程中,采用軟件工程的開發(fā)管理,在開發(fā)的過程中也遵循軟件工程的思想,軟件工程的主要環(huán)節(jié)有:人員管理、項目管理、可行性與需求分析、系統(tǒng)設計、程序設計、測試、維護等。</p><p> 3.1.3代碼分層思想</p><p> 由于采用B/S設計模式分層思想,同時根據(jù)軟件工程的管理思想及系統(tǒng)分析的設計與分析的思想進行系
55、統(tǒng)的開發(fā),利用Java語言開發(fā)Web應用程序,提供String+Hibernate+Spring框架對系統(tǒng)的程序代碼結構進行分層。</p><p><b> 3.2功能需求分析</b></p><p> 該系統(tǒng)主要模塊:教師管理模塊,在線考試模塊,下面就這些模塊在該系統(tǒng)中應有的功能進行以下分析,只有這樣,才能讓用戶對該系統(tǒng)有一個更好的了解。</p>
56、<p><b> 3.3系統(tǒng)總體設計</b></p><p> 根據(jù)需求分析,設計課程考試系統(tǒng)的主要功能模塊有:后臺管理模塊、學生在線考試模塊、教師管理模塊等。</p><p> 系統(tǒng)總體設計功能模塊圖如圖3-1所示:</p><p> 圖3-1 系統(tǒng)功能模塊圖</p><p> 系統(tǒng)結構圖,如圖3-
57、2所示:</p><p> 打開登陸界面圖,用戶登陸,系統(tǒng)根據(jù)不同的用戶類型來選擇相應的跳轉頁面??忌缑姘ㄩ_始考試、資料修改和成績的查詢;管理界面可以對用戶的添加以及修改、試卷的管理、試題的添加與刪除、學生成績的管理等。</p><p> 圖3-2 系統(tǒng)結構圖</p><p> 3.3.1系統(tǒng)管理模塊</p><p> 管理員可以
58、向題庫中添加各種類型且符合要求的試題也可以對它們進行修改和刪除。同時,管理員也能用戶、考試記錄等數(shù)據(jù)進行管理,在此系統(tǒng)中可以由若干個管理員,即系統(tǒng)管理員,他們具有一般用戶所沒有的權限,即具有管理用戶、試題以及試卷等內容的權力,它不需注冊,在數(shù)據(jù)庫有一個表來存放相關信息,可由以存在的管理員添加或刪除管理員。</p><p> 一般用戶:主要是指學校的學生和企事業(yè)單位的培訓對象等。</p><p
59、> (1)試題庫管理:對題型試題庫的管理,使試題的增刪、編輯更為簡便。</p><p><b> ?、僭囶}錄入</b></p><p> 每道試題有類型、試題內容與選項和答案等欄目。管理員輸入完以后,即可看到預覽效果。如果輸入不合法,或者該科題庫中已有該試題編號和內容等,則系統(tǒng)添加就不會成功。</p><p><b> ?、?/p>
60、試題修改</b></p><p> 管理員還可以對試題進行修改。也可以先對試題進行先刪除后添加,從而達到預期的效果。</p><p><b> ③試題刪除</b></p><p> 管理員可以刪除不再需要的試題。</p><p><b> (2)賬號管理</b></p&g
61、t;<p><b> ?、儋~號的添加</b></p><p> 基本信息有ID號、姓名、性別、密碼等,對于用戶輸入的不符合系統(tǒng)要求的數(shù)據(jù),系統(tǒng)仍舊給出提示或警告。</p><p><b> ?、谫~號編輯</b></p><p> 管理員可以修改已存在的賬號信息,如果輸入數(shù)據(jù)不合法,系統(tǒng)將會給出提示并重新錄
62、入。</p><p> 3.3.2 試題模塊設計</p><p> 鑒于主觀題的主觀性,目前無法實現(xiàn)系統(tǒng)自動判卷,所以本系統(tǒng)作的題型只有客觀題類型:單選題。一般情況下,單選題往往在四個供選的答案A、B、C、D中選擇唯一正確的答案。因而,本系統(tǒng)中所涉及的題型跟過去的大體相同,題型的樣題設計如表3-3所示:</p><p> 表3-3 系統(tǒng)功能模塊表</p&
63、gt;<p> 3.3.2教師管理模塊</p><p> 教師管理作為在線考試系統(tǒng)中的一個重要環(huán)節(jié),主要實現(xiàn)對學生用戶的管理,學生成績的查詢和刪除。最重要的是設置考試試卷的綜合參數(shù):試題的類型,試題的數(shù)量和試題的分值,最后是考試時間的設置。</p><p><b> (1)學生管理</b></p><p> 在此模塊中教師
64、可以查詢學生的綜合信息。可以直接查詢所有學生的基本信息并且對學生資料的修改等。</p><p><b> (2)試卷管理</b></p><p> 在此模塊中主要是設置學生考試所用試卷的參數(shù)信息,首先新增一張試卷并設置如下信息:考試試題的類型、每題的分值、考試時間。試卷信息設定以后,如果不滿意,還可以再重新修改試卷信息。</p><p>&
65、lt;b> (3)成績管理</b></p><p> 此模塊所涉及的信息主要是查詢學生的成績,可以直接在管理用戶信息中直接查看。</p><p> 作為教師來講,往往需要對全班學生的每次考試情況做個整體的調查,在此通過本期統(tǒng)計來實現(xiàn)。每次考試過后,教師可以直接從這里查看整體學生的考試情況。</p><p> 3.3.3在線考試模塊</
66、p><p> 進入在線考場是本系統(tǒng)最重要的部分之一。因為一個系統(tǒng)如果涉及到現(xiàn)實的話,就必須考慮得十分周到、完善??忌卿浐?就可以調出試卷進行在線考試??忌钠浯痤}信息通過單、復選按鈕選擇答案來反映??荚嚱Y束采取自主交卷和到了規(guī)定的時間自動題示有機結合的方式辦法予以實現(xiàn)。系統(tǒng)嚴格控制整個考試過程,實行時間的監(jiān)控與權限的控制,考生需要在限定的考試時間內交卷。</p><p> 根據(jù)需求分析,
67、在線考試模塊流程圖如圖3-4所示:</p><p><b> 否</b></p><p><b> 是</b></p><p> 圖3-4 在線考試模塊流程圖</p><p> 當用戶開始進入在線考試系統(tǒng)的時候,首先輸入用戶名和密碼,進行驗證,如果用戶名和密碼正確,這時系統(tǒng)回自動提供給用戶一
68、套試題,從此時起,系統(tǒng)將對用戶進行計時,當時間結束的時候,系統(tǒng)將提示你考試時間已經(jīng)到了,提醒你交試卷,當你提交后,系統(tǒng)回馬上顯示出你的成績。否則,你將返回考試登錄界面,再次試著輸入正確的用戶名和密碼。如果你還沒法進入,請先與教師聯(lián)系,然后再次登錄考試系統(tǒng)。</p><p> 計算機自動閱卷:本系統(tǒng)只考慮客觀題,要求計算機能自動閱卷,然后馬上顯示出考生分數(shù)。</p><p> 成績查閱:
69、考生考完以后,教師應該能對所有紀錄進行查詢。</p><p> 除了實現(xiàn)上述功能以外,在線考試系統(tǒng)還應該具有友好、簡潔的界面,安全性要高,穩(wěn)定性要強,能夠滿足100人以上同時及進行在線考試。</p><p><b> 3.4數(shù)據(jù)庫的設計</b></p><p> 3.4.1 數(shù)據(jù)庫介紹</p><p> 本系統(tǒng)采
70、用的是 Mysql數(shù)據(jù)庫,根據(jù)需求分析所作分析,這里創(chuàng)建了五張表,分別是單選題庫表、學生成績表、學生信息表、教師信息表和試卷信息表。在下面就這五張表做一下分析,并分別列出了其表結構。</p><p> 3.4.2 數(shù)據(jù)詞典分析</p><p> 無論做一個什么系統(tǒng),數(shù)據(jù)庫是必不可少的,它是實現(xiàn)系統(tǒng)的紐帶,為此,這里要把該系統(tǒng)中需要的數(shù)據(jù)庫中的表做出詳細的分析與設計。</p>
71、<p> 因為本系統(tǒng)的設計有單選題類型,所以分別建立了對應的數(shù)據(jù)庫表questin,此外又建立了用戶對應的表,詳細設計分別如表3-1、表3-2所示:</p><p> 單選題庫表結構,如表3-1所示:</p><p> 表3-1 question 表</p><p> 用戶庫表結構,如表3-2所示:</p><p>
72、表3-2 users 表</p><p> 通常,當?shù)卿浺粋€需要注冊的網(wǎng)站的時候,系統(tǒng)是如何知道用戶是否已經(jīng)注冊過,即使注冊過了,登錄的時候是怎么知道用戶輸入的用戶名和密碼不正確,這時,就需要一個用戶表,有用戶名和密碼,為用戶在考試系統(tǒng)中驗證身份做好準備。</p><p><b> 4 系統(tǒng)的功能實現(xiàn)</b></p><p> 在進行了整
73、體設計以后,就開始進行詳細的設計及編碼工作。也就是設計文件和把他們有機地組織在一起實現(xiàn)所有功能。</p><p> 4.1系統(tǒng)流程的實現(xiàn)</p><p> 根據(jù)系統(tǒng)總體設計,首先系統(tǒng)要有一個登錄界面,用戶可以從該界面登錄參加考試。管理員和教師也應該有一個進入管理登錄界面的通道。</p><p> 在考生正確輸入用戶名和密碼以后,接著應該進入待考頁面。在該界面中
74、,考生可以查詢以前的考試成績,考試狀態(tài)時直接點擊“進入考場” 。這個人機交互的過程是必不可少的。</p><p> 考生點擊進入考場以后,進入開始考試界面,由計算機提取試題,顯示出來組成試卷,并開始進行計時??忌俅芜M行考試,答完試題后交卷,進入下一個界面。</p><p> 考生提交答卷后,由計算機進行處理--判卷,得出考試分數(shù),顯示出來,并把該生考試記錄存入數(shù)據(jù)庫。在這個界面上應該
75、可以返回繼續(xù)進行考試或回到登錄界面。</p><p> 以上是系統(tǒng)進行考試功能的部分,要對系統(tǒng)進行管理,如試題管理、成績管理、用戶管理等就需要設計一些管理界面。下面就來逐步進行設計。</p><p> 要進行管理首先要有管理員登陸驗證,這個界面與用戶登錄界面表面一樣,但是他們是從不同的表中提取數(shù)據(jù)進行驗證的,以便于系統(tǒng)擴充和增加安全性。</p><p> 管理
76、員登錄以后,應該有一個管理項目選擇界面,其中包括管理用戶選項、管理題庫選項。</p><p> 管理用戶的界面可以實現(xiàn)用戶的增加的功能,管理員在此可以對用戶進行管理。</p><p> 題庫管理界:點擊選項可以分別進入相應功能的管理,在每個頁面里都可以實現(xiàn)對試題的添加和刪除。</p><p> 最后是系統(tǒng)的安全退出,可以安全的退出后臺管理頁面,返回到考試系統(tǒng)的
77、主頁面。</p><p> 4.2系統(tǒng)模塊功能的實現(xiàn)方法</p><p> 4.2.1數(shù)據(jù)庫連接頁面</p><p> 該文件實現(xiàn)的是連接并打開數(shù)據(jù)庫的功能。</p><p> 本系統(tǒng)采用的是Mysql數(shù)據(jù)庫,這里采用的連接方式是JDBC的連接方式。主要代碼實現(xiàn)如下:</p><p><b> &l
78、t;% </b></p><p> String driver="com.mysql.jdbc.Driver";</p><p> String url="jdbc:mysql://127.0.0.1:3306/user?characterEncoding=utf-8";</p><p> String
79、username="root";</p><p> String password="123";</p><p> Class.forName(driver);</p><p> Connection connection=DriverManager.getConnection(url,username, passwor
80、d);</p><p><b> %> </b></p><p><b> 打開數(shù)據(jù)庫:</b></p><p> 變量“url”主要是記錄存放數(shù)據(jù)庫的相對路徑。</p><p> Connetin的含義是定義了一個變量用來存放數(shù)據(jù)庫連接所創(chuàng)建的連接對象。</p>
81、<p> 4.2.2系統(tǒng)登錄頁面</p><p> 在本系統(tǒng)中登錄頁面的文件是login.jsp文件。這里就注重介紹一下后臺管理的登錄頁面。</p><p> 該文件的功能使這樣實現(xiàn)的:表單提交服務器端的Servlet程序對提交信息進行處理,驗證用戶信息正確無誤后將轉向管理頁面。</p><p><b> 重點程序如下:</b>
82、;</p><p><b> <%</b></p><p> String user=request.getParameter("user");</p><p> String password=request.getParameter("password");</p><
83、p> String code=request.getParameter("code");</p><p> if(user.equals("teacher")&&password.equals("123")){</p><p> response.addHeader("flag",
84、"1");</p><p> response.setHeader("name", user);</p><p> session.setAttribute("login",user);</p><p> response.sendRedirect("manage.jsp");&l
85、t;/p><p><b> }</b></p><p><b> else{</b></p><p> UserLogin ulogin=new UserLogin();</p><p> String uname=ulogin.login(user, password); if(una
86、me!=null&&uname.length()!=0&&code!=null&&code.length()!=0&&code.equals(request.getSession().getAttribute("code"))){</p><p> response.addHeader("flag", &qu
87、ot;1");</p><p> response.setHeader("name", uname);</p><p> session.setAttribute("login",uname);</p><p> response.sendRedirect("/shopcart/index.jsp&q
88、uot;);</p><p><b> }else{</b></p><p> response.addHeader("flag", "2");</p><p> response.sendRedirect("index.jsp");</p><p>
89、;<b> }</b></p><p><b> %></b></p><p> 在這里首先接收從表單傳來用戶輸入的用戶名和密碼信息,再定義一條SQL語句,該語句的功能是查詢在庫里是否有滿足條件的記錄。然后定義一個rs變量,該變量主要用來記錄執(zhí)行SQL后的結果。如果沒有滿足條件的記錄則rs.next()為空,那么會系統(tǒng)會自動重定向到登
90、錄界面,返回登錄頁面讓用戶重新輸入。如果驗證合法,會自動進入到相應的界面。登陸頁面如圖4-1所示:</p><p> 圖4-1考試首頁登錄圖</p><p> 4.2.3題庫管理頁面</p><p> 實現(xiàn)了對單選題題庫的增加,管理員登錄成功后,可以通過本頁面來增加試題。在本頁面中的相應文本框中輸入合法的內容后,點擊“增加試題”按鈕,則會向服務器端發(fā)送請求,成
91、功后,服務器端會把頁面重定向到本頁面,從而可以實現(xiàn)繼續(xù)增加試題的目的。點擊“返回”按鈕,則會返回到管理界面的主頁<manage.jsp></p><p> 增加試題界面如圖4-2所示:</p><p> 圖 4-2 增加試題界面</p><p><b> 主要功能實現(xiàn)程序:</b></p><p>&l
92、t;b> <%</b></p><p> String id = request.getParameter("id");</p><p> String m = request.getParameter("m");</p><p> String a = request.getParameter
93、("a");</p><p> String b = request.getParameter("b");</p><p> String c = request.getParameter("c");</p><p> String d = request.getParameter("d&q
94、uot;);</p><p> String answer = request.getParameter("answer");</p><p><b> try {</b></p><p> String driver="com.mysql.jdbc.Driver";</p><
95、p> String url="jdbc:mysql://127.0.0.1:3306/user?characterEncoding=utf-8";</p><p> String username="admin";</p><p> String password="123";</p><p>
96、 Class.forName(driver);</p><p> Connectionconnection=DriverManager.getConnection(url, username, password);</p><p> Statement st=connection.createStatement();</p><p> Stringsql
97、="insertinto questionvalues("sql+="'"+id+"',"+"'"+m+"',"+"'"+a+"',"+"'"+b+"',"+"'"
98、;+c+"',"+"'"+d+"',"+"'"+answer+"')";</p><p> st.executeUpdate(sql);</p><p> } catch (Exception e) {</p><p>
99、// TODO 自動生成 catch 塊</p><p> e.printStackTrace();</p><p><b> }</b></p><p> response.sendRedirect("add.jsp");</p><p><b> %></b>&
100、lt;/p><p> 操作成功后,主要是通過服務器端的Servlet程序來實現(xiàn)頁面的跳轉功能。</p><p><b> 4.2.4待考頁面</b></p><p> 該文件是用戶登錄在線考試系統(tǒng)后的待考頁面,還可以實現(xiàn)成績查詢,選擇“開始考試”后進入考試界面。</p><p> 該頁面和用戶登錄之前的類似,通過特定
101、的標簽庫做處理,在頁面中相應的位置引入標簽庫,如果登錄成功,再重定向到本頁面,則顯示相應的內容,從而達到登錄的功能。</p><p> 實現(xiàn)該功能的主要程序代碼如下:</p><p><b> <%</b></p><p> HttpSession session=request.getSession();</p>&
102、lt;p> String user=request.getParameter("user");</p><p> String password=request.getParameter("password");</p><p> String code=request.getParameter("code");<
103、;/p><p> if(user.equals("admin")&&password.equals("123")){</p><p> response.addHeader("flag", "1");</p><p> response.setHeader("
104、name", user);</p><p> session.setAttribute("login",user);</p><p> response.sendRedirect("manage.jsp");</p><p><b> }else</b></p><p&
105、gt;<b> {</b></p><p> UserLogin ulogin=new UserLogin();</p><p> Stringuname=ulogin.login(user,password); if(uname!=null&&uname.length()!=0&&code!=null&&co
106、de.length()!=0&&code.equals(request.getSession().getAttribute("code"))){</p><p> response.addHeader("flag", "1");</p><p> response.setHeader("name&qu
107、ot;, uname);</p><p> session.setAttribute("login",uname);</p><p> response.sendRedirect("/shopcart/index.jsp");</p><p><b> }else{</b></p>&
108、lt;p> response.addHeader("flag", "2");</p><p> response.sendRedirect("index.jsp");</p><p><b> }</b></p><p><b> }</b><
109、/p><p><b> %></b></p><p> 在學生登錄時不同的學生登錄時session變量將會記錄他的用戶名。并將接收到的變量值顯示到頁面中。還利用 JavaScript腳本,在頁面中顯示日期和時間,這樣可以給用戶提供觀看時間的方便,以便能夠更好的把握時間來進行考試。</p><p><b> 4.2.5考試頁面&
110、lt;/b></p><p> 該文件實現(xiàn)學生用戶對自己的信息進行管理(修改考生信息、查詢考試得分)的功能,界面如圖5-4所示。</p><p> 該文件實現(xiàn)學生進行在線考試(自動評分)的功能,在學生提交卷子或者考試時間到系統(tǒng)將自動的給客觀題進行評分。界面如圖4-3所示:</p><p> 圖4-3學生考試界面圖</p><p>
111、 該文件就是考試界面,對每個考生的考試時間進行監(jiān)控,到結束時間后自動給出提示并交卷。教師可以根據(jù)不同的科目考試來設定相應的時間。自動交卷頁面如圖4-4所示:</p><p> 圖4-4定時交卷頁面</p><p> 4.2.6在線評分頁面</p><p> 考生提交答卷以后,該文件就把考生的答案同題庫中的正確答案進行比較,最后得出考生的得分。</p&g
112、t;<p> 首先先打開數(shù)據(jù)庫,再讀取從“form”表單提交過來的答案信息,然后根據(jù)隨機抽選題時所抽選的每道題的題號,然后在數(shù)據(jù)庫中對學生所提交的答案進行比較,若與數(shù)據(jù)庫中對應的題目答案相同則加分,否則本題將不加分,最后統(tǒng)計出總分。在這里主要來看一下是如何實現(xiàn)服務器端自動評分,如何將成績和學號等信息記錄起來的。</p><p> 部分實現(xiàn)代碼如下所示:</p><p>
113、 Connection con=DriverManager.getConnection(url, username,password);</p><p> Statement sta = con.createStatement();</p><p> String sql = "select * from question";</p><p>
114、; set = sta.executeQuery(sql);</p><p> int score=0;</p><p> while(set.next()){</p><p> for(Integer i=1;i<=10;i++){</p><p> String answer=request.getParameter(
115、i.toString());</p><p> String str=set.getString("anwer");</p><p> if(str.equals(answer)){if(request.getParameter(""+(i*100)).equals(set.getString("id"))){<
116、;/p><p> score+=10;</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p&
117、gt; request.getSession().setAttribute("score",""+str);</p><p> //把得分存入數(shù)據(jù)庫</p><p> Stringsql2="update userssetscore='"+score+"'</p><p&
118、gt; where name='"+request.getSession().getAttribute("login")+"'";</p><p> sta.executeUpdate(sql2);</p><p> response.sendRedirect("score.jsp");</p
119、><p> 先創(chuàng)建一個數(shù)據(jù)集對象,然后執(zhí)行相應的SQL語句來查找數(shù)據(jù)庫中的試題的記錄, 然后與考生提交過來的答案信息進行比較,若考生答案與數(shù)據(jù)庫中相應題號的答案相同,則把考生的得分加上本題的分值,否則不進行加分。在考生提交過來的答案中包含題號信息,在客戶端中看到的題號是按順序排列的,但這并不是數(shù)據(jù)庫中對應的題號。真正的題號包含在隱藏域中,考生是看不到的。這樣,考生交卷后,服務器端就可以根據(jù)考生的答案和隱藏域中對應的
120、題號信息來進行評分了。最后計算出總成績,并把成績存放在數(shù)據(jù)庫中,以便考生以后查看和教師對考生考試情況的統(tǒng)計。然后,通過重定向把考生本次得分的頁面發(fā)給客戶端,實現(xiàn)自動評卷的效果。</p><p> 4.2.7后臺管理頁面</p><p> 該文件實現(xiàn)的功能是管理員選擇進行管理的項目,也就是管理主界面,可以進行考生的注冊、管理以及對試題的增加與刪除等管理界面如圖4-5 所示:</p&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于bs模式的在線考試系統(tǒng)設計與實現(xiàn)
- 基于bs模式的在線考試系統(tǒng)設計與實現(xiàn)
- 畢業(yè)設計--基于java的在線考試系統(tǒng)
- 畢業(yè)設計--基于java的在線考試系統(tǒng)
- 【資料下載】基于bs模式的在線考試系統(tǒng)的設與實現(xiàn)畢業(yè)設計【原創(chuàng)精品】
- 畢業(yè)設計---基于bs模式選課系統(tǒng)的設計與實現(xiàn)
- 畢業(yè)設計----基于java的在線購物系統(tǒng)的設計與實現(xiàn)
- 畢業(yè)設計--基于bs模式的畢業(yè)設計跟蹤管理系統(tǒng)的設計與實現(xiàn)
- 基于bs模式下畢業(yè)設計系統(tǒng)設計與實現(xiàn)
- 基于java ee的在線考試系統(tǒng)畢業(yè)設計
- java在線考試系統(tǒng)畢業(yè)設計
- 畢業(yè)設計--基于bs模式的汽車銷售管理系統(tǒng)的設計與實現(xiàn)
- php畢業(yè)設計--基于bs模式的個人博客系統(tǒng)的設計與實現(xiàn)
- 基于java在線考試系統(tǒng)設計與實現(xiàn)
- 基于bs結構在線考試系統(tǒng)設計與實現(xiàn)
- 基于bs模式的在線考試系統(tǒng)的設與實現(xiàn)
- 基于java技術的在線考試系統(tǒng)設計與實現(xiàn)
- 畢業(yè)設計---在線考試系統(tǒng)的設計與實現(xiàn)
- 畢業(yè)設計--在線考試系統(tǒng)的設計與實現(xiàn)
- 基于bs模式下在線購物系統(tǒng)設計與實現(xiàn)
評論
0/150
提交評論