版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 基于JAVA的在線考試系統(tǒng)</p><p><b> 畢業(yè)設(shè)計(jì)論文</b></p><p> 基于JAVA的在線考試系統(tǒng)</p><p> 基于JAVA的在線考試系統(tǒng)</p><p> 【內(nèi)容提要】 二十一世紀(jì)是信息時(shí)代的一個(gè)新起點(diǎn),我們的信息技術(shù)的發(fā)展已經(jīng)延伸到各個(gè)領(lǐng)域,對(duì)于我一個(gè)大學(xué)生我
2、想到了考試,于是我們設(shè)計(jì)了一個(gè)考試系統(tǒng),對(duì)一些科目的考試可以通過互聯(lián)網(wǎng)絡(luò)或局域網(wǎng)進(jìn)行,方便校方考務(wù)的管理,也方便了考生,尤其適合考生分布廣,不易集中的遠(yuǎn)程教育。我們主要開發(fā)系統(tǒng)的后臺(tái)管理系統(tǒng)—JAVA在線考試管理子系統(tǒng),它包括試題管理、考生管理、在線制作試卷、控制學(xué)生考試的設(shè)置、試卷審批等功能。我要寫的就是在線考試管理子系統(tǒng)的分析、設(shè)計(jì)和開發(fā)的全部過程。運(yùn)用ER圖,程序流程圖等對(duì)在線管理子系統(tǒng)的設(shè)計(jì)過程進(jìn)行的說明。全文共分為開發(fā)方案、需
3、求分析、系統(tǒng)設(shè)計(jì)、關(guān)鍵技術(shù)解決,結(jié)論幾個(gè)部分。開發(fā)方案中主要介紹開發(fā)在線考試系統(tǒng)得目的、開發(fā)方案的選擇及開發(fā)框架的技術(shù)的確定;需求分析介紹了在線考試系統(tǒng)的總體需求及系統(tǒng)各模塊的功能需求;系統(tǒng)設(shè)計(jì)介紹了系統(tǒng)設(shè)計(jì)的指導(dǎo)思想、數(shù)據(jù)庫的設(shè)計(jì)、系統(tǒng)模塊的設(shè)計(jì);關(guān)鍵技術(shù)介紹了在具體實(shí)現(xiàn)時(shí)需解決的一些技術(shù),如開發(fā)框架的整合技術(shù)、開發(fā)</p><p> 框架與數(shù)據(jù)庫的連接及數(shù)據(jù)的備份與還原。</p><p&
4、gt; 【關(guān)鍵詞】:在線考試,JSP,JAVA,oracle9i/10g數(shù)據(jù)庫,B/S模式</p><p><b> 前言 </b></p><p><b> 網(wǎng)上考試系統(tǒng)</b></p><p><b> 前言 2</b></p><p><b>
5、 1.1問題分析4</b></p><p><b> 1.2項(xiàng)目目的5</b></p><p><b> 1.3方案選擇5</b></p><p> 1.4開發(fā)框架技術(shù)8</p><p><b> 2、 需求分析9</b></p&
6、gt;<p><b> 2.1任務(wù)概述9</b></p><p> 2.2功能需求概述9</p><p> 2.2運(yùn)行環(huán)境10</p><p><b> 3、系統(tǒng)設(shè)計(jì)10</b></p><p> 3.1指導(dǎo)思想10</p><p> 3.
7、2系統(tǒng)結(jié)構(gòu)圖12</p><p> 3.3數(shù)據(jù)庫設(shè)計(jì)14</p><p> 4、系統(tǒng)架構(gòu)與數(shù)據(jù)庫的連接16</p><p><b> 5、結(jié)束語19</b></p><p><b> 參考文獻(xiàn)19</b></p><p> 【ABSTRACT】On-lin
8、e examination system 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 man
9、agement of duty, also convenient the examinee is particularly suitable for examinee to distribute widely and not easily concentrated of long range education.I mainly develop the system-JAVA of the backstage management
10、9;s on-line examination management sub- system o</p><p><b> 后記21</b></p><p> 當(dāng)今社會(huì),考試已經(jīng)是我們必不可少的東西了,從小到大我們已經(jīng)考過無數(shù)次了,以后還要考,不管是國內(nèi)還是國外的各大廠家,都在不斷的推出一系列的考試、認(rèn)證。又是要我們?nèi)タ荚嚒N覀儑业淖钥蓟蚴浅煽?,以及各省市的?/p>
11、種考試,現(xiàn)在都在朝著信息化的道路前進(jìn)在走。我們相信在今后這一系列的考試將會(huì)走向網(wǎng)絡(luò)化考試的。這樣才是符合信息技術(shù)發(fā)展的方向。我們要給不同的考試同一個(gè)好的解決方案。 這個(gè)方案在技術(shù)上來講我們是采用B/S模式。 在windows/Linux平臺(tái)上,使用IE瀏覽器,完成抽題、考試、交卷等考試任務(wù)。方便,簡單的完成各種考試,這也是我們的目的所在。</p><p> 考點(diǎn)模塊通過網(wǎng)絡(luò)獲取題庫,按照題庫中的抽題策略,自動(dòng)給
12、每個(gè)考生生成一份試卷,考生在線作答,考試結(jié)果數(shù)據(jù)通過網(wǎng)絡(luò)回收,系統(tǒng)自動(dòng)進(jìn)行判分,生成考試成績和統(tǒng)計(jì)數(shù)據(jù)?!霸诰€考試系統(tǒng)”是集合現(xiàn)代考試?yán)碚?、方法和現(xiàn)代信息技術(shù)手段的智能化網(wǎng)上考試系統(tǒng),為學(xué)生個(gè)性化學(xué)習(xí)提供“靈活、方便、科學(xué)、公平”的“個(gè)別化考試服務(wù)”,是終結(jié)性評(píng)價(jià)系統(tǒng)。學(xué)生可以隨時(shí)、隨地進(jìn)行課程結(jié)業(yè)考試。</p><p> 學(xué)校與社會(huì)上的各種考試大都采用傳統(tǒng)的考試方式,在此方式下,組織一次考試至少要經(jīng)過五個(gè)步驟
13、,即人工出卷,考生考試,人工閱卷,成績評(píng)估和試卷分析。顯然,隨著考試類型的不斷增加及考試要求的不斷提高,教師的工作量將會(huì)越來越大,并且其工作將是一件十分煩瑣和非常容易出錯(cuò)的事情,可以說傳統(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)用正逐步深入到千家萬戶。人們迫切要求利用這些技術(shù)來進(jìn)行在線考試,以減輕教師的工作負(fù)擔(dān)及提高工作效率,與此同時(shí)也提高了考試的質(zhì)量,從
14、而使考試更趨于公證、客觀、更加激發(fā)學(xué)生的學(xué)習(xí)興趣。例如目前許多國際著名的計(jì)算機(jī)公司所舉辦的各種認(rèn)證考試絕大部分采用這種方式。為了適應(yīng)新形勢的發(fā)展,我們推出了這一系統(tǒng),使其盡快在各類考試中發(fā)揮高效,便捷的作用,把老師從繁重的工作中解脫出來。在這里不得不說“老師們,你們辛苦了”;</p><p><b> 1、系統(tǒng)需求分析</b></p><p><b>
15、1.1問題分析</b></p><p> 在以往傳統(tǒng)的學(xué)校教學(xué)中,進(jìn)行考試,要求老師刻試卷、印試卷、安排考試、監(jiān)考、收集試卷、評(píng)改試卷、講評(píng)試卷和分析試卷,這是一個(gè)繁雜的過程,需要大量人力、物力與時(shí)間的投入,已經(jīng)越來越不適應(yīng)學(xué)校信息化建設(shè)與現(xiàn)代教學(xué)的需要。尤其在遠(yuǎn)程網(wǎng)絡(luò)教學(xué)中,學(xué)生分布廣,不易統(tǒng)一集中安排考試,給校方和學(xué)生帶來了眾多的不便。而在線考試系統(tǒng),正是信息化建設(shè)的產(chǎn)物,它是傳統(tǒng)考場的延伸。它
16、可以利用互聯(lián)網(wǎng)絡(luò)和局域網(wǎng),隨時(shí)隨地的對(duì)學(xué)生進(jìn)行考試,加上數(shù)據(jù)庫技術(shù)的利用,大大簡化了傳統(tǒng)考試的過程,因此在線考試是電子化教學(xué)的不可缺少的輔助手段。在當(dāng)今信息時(shí)代,計(jì)算機(jī)技術(shù)與網(wǎng)絡(luò)技術(shù)越來越廣地應(yīng)用于各個(gè)領(lǐng)域,改變著人們的學(xué)習(xí)、工作、生活乃至思維方式,也引起了教育領(lǐng)域的重大變革。將計(jì)算機(jī)與網(wǎng)絡(luò)技術(shù)應(yīng)用于現(xiàn)代高等教育中,是現(xiàn)代高等教育發(fā)展的需要,也是改革教育模式,提高學(xué)校教學(xué)效果和教學(xué)效率、提高科研和管理水平的必要手段。</p>
17、<p><b> 1.2項(xiàng)目目的</b></p><p> 在線考試系統(tǒng)的總體目標(biāo):</p><p> 在線考試系統(tǒng)可以幫助教師完成一個(gè)考試從題目設(shè)計(jì),考試安排,考試實(shí)施,考卷批改到分?jǐn)?shù)統(tǒng)計(jì)總結(jié)的所有工作。</p><p> 所有的考試數(shù)據(jù)和其它數(shù)據(jù)庫需要一種主流的方式進(jìn)行存儲(chǔ)和管理,例如使用數(shù)據(jù)庫技術(shù)。</p>
18、;<p> 考試數(shù)據(jù)的存放和處理必須對(duì)考試保密,需要一定的安全性保障。</p><p><b> 對(duì)考試的系統(tǒng)目標(biāo):</b></p><p> 這個(gè)軟件是分布式的,這意味著只要有考試客戶端可以連接到考試應(yīng)用服務(wù)器,任何考生在任何地方進(jìn)行身份確認(rèn),都能完成考試。</p><p> 題目最好有一定的穩(wěn)定性和隨機(jī)性。穩(wěn)定性可以保
19、證每一次考試對(duì)每一個(gè)考生是公平的,隨機(jī)性可以避免作弊的發(fā)生。</p><p> 考試的部分結(jié)果在考生考完之后就可以知道,同時(shí)監(jiān)考教師可以根據(jù)同學(xué)們答題的情況作備注記錄</p><p><b> 對(duì)教師的系統(tǒng)目標(biāo):</b></p><p> 提供一個(gè)功能全面的考核管理客戶端,可以進(jìn)行考試設(shè)計(jì)和安排。</p><p>
20、 通過管理客戶端,教師可以進(jìn)行考試的身份管理。</p><p> 考生的考試結(jié)果可以被保存下來,供教師進(jìn)行分析統(tǒng)計(jì)和察看。</p><p><b> 1.3方案選擇</b></p><p> 開發(fā)在線考試系統(tǒng),提出以下解決方案:</p><p> 選擇Oracle作為后臺(tái)的數(shù)據(jù)庫,選擇JAVA、JSP、Java
21、Script、Html作為應(yīng)用程序開發(fā)工具,運(yùn)用Tomcat服務(wù)器技術(shù),整個(gè)系統(tǒng)完全基于B/S (Browser/Server)模式進(jìn)行設(shè)計(jì),采用strus框架進(jìn)行架構(gòu)。</p><p><b> JAVA簡介</b></p><p> Java是Sun公司推出的新的一代面向?qū)ο蟪绦蛟O(shè)計(jì)語言,特別適合于Internet應(yīng)用程序開發(fā)。Java的產(chǎn)生與流行是當(dāng)今Int
22、ernet發(fā)展的客觀要求,Java是一門各方面性能都很好的編程語言,它的基本特點(diǎn)是簡單、面向?qū)ο?、分布式、解釋的、健壯的、安全的、結(jié)構(gòu)中立的、可移植的、性能很優(yōu)異的、多線程的、動(dòng)態(tài)的,特別適合在Internet環(huán)境上開發(fā)的應(yīng)用系統(tǒng)。</p><p> Web應(yīng)用程序開發(fā)環(huán)境—JSP技術(shù)</p><p> JSP的全稱是Java Server Pages,它是SUN推出的一種動(dòng)態(tài)網(wǎng)頁技術(shù)
23、標(biāo)準(zhǔn)。它在傳統(tǒng)的靜態(tài)頁面文件(*.html,*.htm)中加入JAVA程序片段和JSP標(biāo)記,就構(gòu)成了JSP頁面。JSP具有以下的優(yōu)點(diǎn):</p><p> 將業(yè)務(wù)層與表示層分離:使用JSP技術(shù),網(wǎng)絡(luò)開發(fā)人員可充分使用HTML來設(shè)計(jì)頁面顯示部分(如字體顏色等),并使用JSP指令或者JAVA程序片段來生成網(wǎng)頁上的動(dòng)態(tài)內(nèi)容;</p><p> 能夠跨平臺(tái):JSP支持絕大部分平臺(tái),包括現(xiàn)在非常流
24、行的LINUX系統(tǒng),應(yīng)用非常廣泛的Apache服務(wù)器也提供了支持JSP的服務(wù);</p><p> 組件的開發(fā)和使用很方便:如ASP的組件是由C++,VB等語言開發(fā)的,并需要注冊才能使用;而JSP的組件是用Java開發(fā)的,可以直接使用;</p><p> 一次編寫,處處運(yùn)行:作為JAVA開發(fā)平臺(tái)的一部分,JSP具有JAVA的所有優(yōu)點(diǎn),包括Write once , Run everywhe
25、re.</p><p> Tomcat應(yīng)用服務(wù)器</p><p> 目前支持JSP的應(yīng)用服務(wù)器是較多的,Tomcat是其中較為流行的一個(gè)Web服務(wù)器,被JavaWorld雜志的編輯選為2001年度最具創(chuàng)新的Java產(chǎn)品,可見其在業(yè)界的地位。 </p><p> Tomcat是一個(gè)免費(fèi)的開源的Serlvet容器,在Tomcat中,應(yīng)用程序的部
26、署很簡單,你只需將你的WAR放到Tomcat的webapp目錄下,Tomcat會(huì)自動(dòng)檢測到這個(gè)文件,并將其解壓。你在瀏覽器中訪問這個(gè)應(yīng)用的Jsp時(shí),通常第一次會(huì)很慢,因?yàn)門omcat要將Jsp轉(zhuǎn)化為Servlet文件,然后編譯。編譯以后,訪問將會(huì)很快。</p><p> Tomcat也具有傳統(tǒng)的Web服務(wù)器的功能:處理Html頁面。但是與Apache相比,它的處理靜態(tài)Html的能力就不如Apache。我們可以將
27、Tomcat和Apache集成到一塊,讓Apache處理靜態(tài)Html,而Tomcat處理Jsp和Servlet。Tomcat是一個(gè)很好的工具,不僅僅因?yàn)槠涿赓M(fèi),功能強(qiáng)大,更因?yàn)槠溟_放性,越來越受到人們的重視。</p><p><b> oracle</b></p><p> Oracle全球公認(rèn)最好的數(shù)據(jù)庫提供商在8i之前支持1024p,9i之后沒有限制(m-g-
28、t-p-e)中國最早在保險(xiǎn)業(yè)使用oracle</p><p><b> oracle的版本</b></p><p> 1978年 oracle 1</p><p> 1980年 oracle 2</p><p> 1982年:oracle 3用c重寫 ,跨平臺(tái)</p><p> 1986
29、年: oracle 5,關(guān)系型已經(jīng)成熟</p><p> 1989年 oracle6 實(shí)現(xiàn)熱備份</p><p> 1993年 oracle7,登陸中國</p><p> 1997年 oracle8</p><p> 1999年 oracle8i 用java實(shí)現(xiàn)</p><p> oracle 具有如下特性:
30、 </p><p> 其數(shù)據(jù)庫引擎提供完整的 XML 支持</p><p> 一個(gè)數(shù)據(jù)庫引擎可以在不同的平臺(tái)上使用</p><p> 其關(guān)系數(shù)據(jù)庫引擎支持當(dāng)今苛刻的數(shù)據(jù)處理環(huán)境所需的功能。</p><p> 一系列管理和開發(fā)工具,是其系統(tǒng)容易安裝 、部署、管理和使用。</p><p> 有析取和分析匯總數(shù)據(jù)以
31、進(jìn)行聯(lián)機(jī)分析處理 (OLAP) 的工具</p><p><b> B/S 開發(fā)模式</b></p><p> 伴隨著Internet的迅速發(fā)展,計(jì)算機(jī)技術(shù)正在由基于C/S(client/ Server)模式的應(yīng)用系統(tǒng)轉(zhuǎn)變?yōu)榛贐/S模式的應(yīng)用系統(tǒng)。</p><p> 過去,網(wǎng)絡(luò)軟件的開發(fā)都采用C/S(client)模式,在這種模式下,主要
32、的業(yè)務(wù)邏輯都集中于客戶端程序,因此,必然導(dǎo)致以下問題:</p><p> 系統(tǒng)安裝、調(diào)試、維護(hù)和升級(jí)困難。由于客戶端的硬件配置可能存在差異,軟件環(huán)能各不相同,因此,在安裝時(shí),必須對(duì)每一個(gè)客戶端分別進(jìn)行配置,同樣,在軟件升級(jí)時(shí)也要對(duì)客戶端分別處理。</p><p> 在整個(gè)系統(tǒng)中,業(yè)務(wù)邏輯和用戶界面都集中到了客戶端,必然會(huì)增加安全隱患。</p><p> B/S
33、模式帶來了巨大的好處:</p><p> 開發(fā)成本及維護(hù)成本降低。由于B/S架構(gòu)管理軟件只安裝在服務(wù)器端(Server)上,即應(yīng)用程序在部署、升級(jí)、維護(hù)時(shí),只需要在服務(wù)器端進(jìn)行配置就可以了,網(wǎng)絡(luò)管理人員只需要管理服務(wù)器就行了,用戶界面主要事務(wù)邏輯在服務(wù)器(Server)端完全通過WWW瀏覽器實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),所有的客戶端只有瀏覽器,網(wǎng)絡(luò)管理人員只需要做硬件維護(hù)。</p&g
34、t;<p> 良好的安全性能,防火墻技術(shù)可以保證后臺(tái)數(shù)據(jù)庫的安全性。所有的配置工作都集中在服務(wù)器端且所有客戶端請求都是通過DBMS來訪問數(shù)據(jù)庫,從而大大減少了數(shù)據(jù)直接暴露的風(fēng)險(xiǎn)。</p><p><b> 1.4開發(fā)框架技術(shù)</b></p><p> 對(duì)于框架技術(shù),我們采用Struts+Hibernate的整合,其實(shí)任何一種框架都可以完成我們的項(xiàng)目
35、,但我們選擇三種框架的組合是因?yàn)槿N框架各有好處,我們利用它們的優(yōu)點(diǎn),來避免它們的缺點(diǎn),充分利用Java技術(shù)在web的應(yīng)用。</p><p> Struts是應(yīng)用比較廣泛的一種表現(xiàn)層框架</p><p> Struts是一個(gè)為開發(fā)基于模型(Model)-視圖(View)-控制器(Controller)(MVC)模式的應(yīng)用架構(gòu)的開源框架,是利用Servlet,JSP和custom tag
36、 library構(gòu)建Web應(yīng)用的一項(xiàng)非常有用的技術(shù)。由于Struts能充分滿足應(yīng)用開發(fā)的需求,簡單易用,敏捷迅速。它使用服務(wù)層框架可以將JavaBeans從Jsp/Servlet中分離出來,而使用表現(xiàn)層框架則可以將Jsp中剩余的JavaBeans完全分離,這部分JavaBeans主要負(fù)責(zé)顯示相關(guān)信息,一般是通過標(biāo)簽庫(Taglib)實(shí)現(xiàn),不同框架有不同自己的標(biāo)簽庫,Struts是應(yīng)用比較廣泛的一種表現(xiàn)層框架。</p>&l
37、t;p><b> AJAX</b></p><p> AJAX(Asynchronous JavaScript And XML)利用javascript和xml兩種技術(shù)以一種新的方式</p><p> 組合起來的一門客戶端技術(shù)。它解決了以下問題:</p><p> 1) 當(dāng)前頁面的內(nèi)容丟失,處于空白狀態(tài)</p>&l
38、t;p> 2) 用戶當(dāng)前的操作被中斷</p><p> 3) 如果頁面內(nèi)容要局部更新的話,整個(gè)頁面要全部被刷新。</p><p> ? 使用目的:解決以上的問題 </p><p> ? 功能:用于客戶端和服務(wù)器數(shù)據(jù)的異步傳輸</p><p> ? 范圍:任何Java應(yīng)用</p><p> Hibern
39、ate通過持久層的框架將數(shù)據(jù)庫存儲(chǔ)從服務(wù)層中分離出來</p><p> 它是O/R Mapping的一種實(shí)現(xiàn)是目前在JAVA界使用非常廣泛的O/R Mapping的一種實(shí)現(xiàn),可以實(shí)現(xiàn)關(guān)系型數(shù)據(jù)庫和對(duì)象之間的映射。用來開發(fā)數(shù)據(jù)庫系統(tǒng)非常方便,可以將數(shù)據(jù)庫和程序的設(shè)計(jì)融合在一起。表現(xiàn)層和服務(wù)層的分離是通過兩種框架達(dá)到目的的,剩余的就是持久層框架了,通過持久層的框架將數(shù)據(jù)庫存儲(chǔ)從服務(wù)層中分離出來就是其目的,持久層框架
40、有兩種方向:直接自己編寫JDBC等SQL語句(如Ibatis);使用O/R Mapping技術(shù)實(shí)現(xiàn)的Hibernate和JDO技術(shù);當(dāng)然還有EJB中的實(shí)體Bean技術(shù)。Hibernate的工作原理是通過文件把值對(duì)象和數(shù)據(jù)庫表之間建立起一個(gè)映射關(guān)系,這樣,我們只需要通過操作這些值對(duì)象和Hibernate提供的一 些基本類,就可以達(dá)到使用數(shù)據(jù)庫的目的。例如,使用Hibernate的查詢,可以直接返回包含某個(gè)值對(duì)象的列表(List),而不必向
41、傳統(tǒng)的JDBC訪問方式一樣把結(jié)果集的數(shù)據(jù)逐個(gè)裝載到一個(gè)值對(duì)象中,為我們的編碼工作節(jié)省了大量的勞動(dòng)。Hibernate提供的HQL是一種類SQL語言,是提供對(duì)象化的數(shù)據(jù)庫查詢方式,但HQL在功能和使用方式上都非常接近于標(biāo)</p><p><b> 2、 需求分析</b></p><p><b> 2.1任務(wù)概述</b></p&g
42、t;<p> 在線考試管理子系統(tǒng)主要實(shí)現(xiàn)題庫管理、在線制作試卷、在線控制考試、自動(dòng)評(píng)分、自動(dòng)交卷、考生管理、成績查詢、試卷管理等功能,充分利用計(jì)算機(jī)科學(xué)與技術(shù),改變傳統(tǒng)的考試操作方式,實(shí)現(xiàn)無紙化考試的模式。</p><p><b> 2.2功能需求概述</b></p><p> 系統(tǒng)需要解決的主要問題</p><p> 我
43、主要開發(fā)的是教師管理子系統(tǒng),在此系統(tǒng)中我們主要對(duì)前臺(tái)考試系統(tǒng)的顯示信息進(jìn)行管理和設(shè)置。我將子系統(tǒng)分為以下功能模塊:</p><p> 考試統(tǒng)計(jì):用于查看考試的信息</p><p> 試題講解:可對(duì)本次考試進(jìn)行試卷的講解</p><p> 用戶管理:對(duì)本用戶的信息進(jìn)行修改</p><p> 查看考試情況:對(duì)不同的班級(jí)和科目進(jìn)行統(tǒng)計(jì),統(tǒng)計(jì)
44、分為:不及格、及格、中等、良好、優(yōu)秀五個(gè)等級(jí),統(tǒng)計(jì)值為各個(gè)等級(jí)所占的百分比.</p><p> 查看考生情況:可以查看不同班級(jí)的不同科目的考試的詳細(xì)情況</p><p> 開始考試:監(jiān)考教師點(diǎn)擊考試考試按鈕后,考生才能考試考試,否則沒有試題。</p><p> 結(jié)束考試:監(jiān)考教師點(diǎn)擊結(jié)束考試按鈕后,考生不能再提交考卷。</p><p>
45、<b> 2.2運(yùn)行環(huán)境</b></p><p> 硬件需求: PIII/256M/10G 及以上配置,要求為考試系統(tǒng)分配足夠的數(shù)據(jù)庫磁盤空間</p><p> 推薦配置: PIV 2G/512M/40G</p><p> 操作系統(tǒng)需求: Windows2000及以上操作系統(tǒng) ( 推薦 ) ,也可以使用 Sun Solari
46、s 等 Linux 操作系統(tǒng)</p><p> 數(shù)據(jù)庫軟件需求: Oracle 9i/Oracle 10g 數(shù)據(jù)庫</p><p> 中間件軟件需求:tomcat系列服務(wù)器</p><p><b> 3、系統(tǒng)設(shè)計(jì)</b></p><p><b> 3.1指導(dǎo)思想</b></p>
47、<p> 、B/S結(jié)構(gòu)開發(fā)思想</p><p> 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)下,用戶工作界面是通過WWW瀏覽器來實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實(shí)現(xiàn),形成所謂三層(3-tier)結(jié)構(gòu)。一個(gè)三層架構(gòu)的應(yīng)用程序由三部分組
48、成,這三部分各自分布在網(wǎng)絡(luò)中的不同地方。這三個(gè)部分分別是:工作站或表示層接口、事務(wù)邏輯、數(shù)據(jù)庫以及與其相關(guān)的程序設(shè)計(jì)。在一個(gè)典型的三層架構(gòu)應(yīng)用程序中,應(yīng)用程序的用戶工作站包括提供圖形用戶界面(GUI)的程序設(shè)計(jì)和具體的應(yīng)用程序入口表格或交互式窗口。事務(wù)邏輯處在局域網(wǎng)(LAN)服務(wù)器或其他共享主機(jī)上,它作為響應(yīng)工作站所發(fā)出客戶請求的服務(wù)器,而相對(duì)于處于大型機(jī)的第三層它是作為客戶端,并且決定需要什么數(shù)據(jù)以及數(shù)據(jù)存儲(chǔ)在哪里。第三層包括數(shù)據(jù)
49、庫以及處理讀寫以及訪問數(shù)據(jù)庫的程序。然而應(yīng)用程序的設(shè)計(jì)可能比這個(gè)架構(gòu)要復(fù)雜,對(duì)于大型程序來說,這個(gè)三層模式是一種比較簡便的考慮方法。這種應(yīng)用程序的設(shè)計(jì)使用客戶/服務(wù)器模式,各層可以同時(shí)開發(fā),并且可以由不同的</p><p> 、系統(tǒng)工程的流程思想</p><p> 我們在系統(tǒng)開發(fā)過程中,采用軟件工程的開發(fā)管理,在開發(fā)的過程中也遵循軟件工程的思想,軟件工程的主要環(huán)節(jié)有:人員管理(自己
50、模擬)、項(xiàng)目管理(我的小組模擬)、可行性與需求分析、系統(tǒng)設(shè)計(jì)、程序設(shè)計(jì)、測試、維護(hù)等,如圖1.1所示。 </p><p> 、面向?qū)ο髾C(jī)制的設(shè)計(jì)思想</p><p> 所有計(jì)算機(jī)均由兩種元素組成:代碼和數(shù)據(jù)。精確的說,有些程序是圍繞著"什么正在發(fā)生"而編寫,有些則是圍繞"誰正在受影響"而編寫的。</p><p> 第一種
51、編程方式叫做"面向過程的模型",按這種模型編寫的程序以一系列的線性步驟(代碼)為特征,可被理解為作用于數(shù)據(jù)的代碼。如 C 等過程化語言。</p><p> 第二種編程方式叫做"面向?qū)ο蟮哪P?quot;,按這種模型編寫的程序圍繞著程序的數(shù)據(jù)(對(duì)象)和針對(duì)該對(duì)象而嚴(yán)格定義的接口來組織程序,它的特點(diǎn)是數(shù)據(jù)控制代碼的訪問.通過把控制權(quán)轉(zhuǎn)移到數(shù)據(jù)上,面向?qū)ο蟮哪P驮诮M織方式上有:抽象、封裝
52、、繼承和多態(tài)的好處。</p><p><b> 、代碼分層思想</b></p><p> 由于采用B/S設(shè)計(jì)模式分層思想,同時(shí)根據(jù)軟件工程的管理思想及系統(tǒng)分析的設(shè)計(jì)與分析的思想進(jìn)行系統(tǒng)的開發(fā),利用Java語言開發(fā)Web應(yīng)用程序,提供String+Hibernate+Spring框架對(duì)系統(tǒng)的程序代碼結(jié)構(gòu)進(jìn)行分層。分層的策略如下:</p><p&g
53、t; Struts-Spring-Hibernate 架構(gòu)</p><p><b> 3.2系統(tǒng)結(jié)構(gòu)圖</b></p><p> 、本系統(tǒng)分為學(xué)生前臺(tái)子系統(tǒng)和考試管理子系統(tǒng),整個(gè)系統(tǒng)的結(jié)構(gòu)圖如下:</p><p><b> 系統(tǒng)部分功能序列圖</b></p><p><b> 用
54、戶登錄序列圖:</b></p><p><b> 系統(tǒng)操作序列圖:</b></p><p><b> 3.3數(shù)據(jù)庫設(shè)計(jì)</b></p><p> 根據(jù)系統(tǒng)需要和考試需要,設(shè)立了如下數(shù)據(jù)庫表:</p><p><b> examstate</b></p&
55、gt;<p><b> 考試狀態(tài)表</b></p><p><b> state</b></p><p><b> student</b></p><p><b> teacher</b></p><p><b> jte
56、acher</b></p><p><b> admin</b></p><p><b> chengji</b></p><p><b> banji</b></p><p> 4、系統(tǒng)架構(gòu)與數(shù)據(jù)庫的連接</p><p> 對(duì)于數(shù)
57、據(jù)庫的連接,我們的數(shù)據(jù)訪問接口采用JDBC-ODBC橋數(shù)據(jù)驅(qū)動(dòng)程序,以純Java的方式來連接數(shù)據(jù)庫,為訪問不同的數(shù)據(jù)庫提供統(tǒng)一的接口。JDBC數(shù)據(jù)庫驅(qū)動(dòng)程序是把JDBC調(diào)用翻譯成廠商專用API的調(diào)用。開放數(shù)據(jù)連接(ODBC)最初是為微軟操作系統(tǒng)上的SQL提供API標(biāo)準(zhǔn),后來也在其他的平臺(tái)上提供了支持。ODBC為直接訪問數(shù)據(jù)定義了一組函數(shù),而不是在客戶應(yīng)用程序中嵌入SQL。JDBC-ODBC橋在JDBC API 和ODBC API 之間提
58、供了一個(gè)橋梁,這個(gè)橋把標(biāo)準(zhǔn)的JDBC調(diào)用翻譯成對(duì)應(yīng)的ODBC調(diào)用,然后通過ODBC API把它們發(fā)送到ODBC數(shù)據(jù)源。</p><p> 在選擇了數(shù)據(jù)訪問接口后,開始利用這個(gè)原理進(jìn)行具體的連接了。</p><p> 由于我們開發(fā)時(shí)是利用MVC的設(shè)計(jì)模式,所以在此我們的數(shù)據(jù)庫連接是封存在M中的,即只要我們和M層連接上,就已經(jīng)連接上數(shù)據(jù)庫了。</p><p> 在
59、M上我們采用Hibernate框架技術(shù),以下是一個(gè)非常簡要的Hibernate體系結(jié)構(gòu)的概要圖:</p><p> 從這個(gè)圖可以看出,Hibernate使用數(shù)據(jù)庫和配置信息來為應(yīng)用程序提供持久化服務(wù)(以及持久的對(duì)象)。我們只需在hibernate.cfg.xml中配置以下語句即可:</p><p> <?xml version='1.0' encoding=
60、9;UTF-8'?></p><p> <!DOCTYPE hibernate-configuration PUBLIC</p><p> "-//Hibernate/Hibernate Configuration DTD 3.0//EN"</p><p> "http://hibernate.sourcefo
61、rge.net/hibernate-configuration-3.0.dtd"></p><p> <!-- Generated by MyEclipse Hibernate Tools. --></p><p> <hibernate-configuration></p><p>
62、 <session-factory></p><p> <property name="show_sql">true</property></p><p> <property name="connection.url">jdbc:oracle:thin:@192.168.1.250:1521:br
63、iupdb</property></p><p> <property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property></p><p> <property name="connection.username&quo
64、t;>jd0801</property></p><p> <property name="connection.password">jd0801</property></p><p> <property name="dialect">org.hibernate.dialect.Oracle
65、9Dialect</property></p><p> <property name="myeclipse.connection.profile">mytest</property></p><p> <mapping resource="com/briup/test/bean/exam/Ajaxjsf.hbm.
66、xml" /></p><p> <mapping resource="com/briup/test/bean/exam/Ejb.hbm.xml" /></p><p> <mapping resource="com/briup/test/bean/exam/Hibernate.hbm.xml" /><
67、;/p><p> <mapping resource="com/briup/test/bean/exam/Html.hbm.xml" /></p><p> <mapping resource="com/briup/test/bean/exam/Java.hbm.xml" /></p><p> &l
68、t;mapping resource="com/briup/test/bean/exam/Jdbc.hbm.xml" /></p><p> <mapping resource="com/briup/test/bean/exam/Jsp.hbm.xml" /></p><p> <mapping resource=&quo
69、t;com/briup/test/bean/exam/Ooaduml.hbm.xml" /></p><p> <mapping resource="com/briup/test/bean/exam/Oracle.hbm.xml" /></p><p> <mapping resource="com/briup/test/
70、bean/exam/Plsql.hbm.xml" /></p><p> <mapping resource="com/briup/test/bean/exam/Servlet.hbm.xml" /></p><p> <mapping resource="com/briup/test/bean/exam/Spring.h
71、bm.xml" /></p><p> <mapping resource="com/briup/test/bean/exam/Struts.hbm.xml" /></p><p> <mapping resource="com/briup/test/bean/exam/Unix.hbm.xml" />&l
72、t;/p><p> <mapping resource="com/briup/test/bean/exam/Webservice.hbm.xml" /></p><p> <mapping resource="com/briup/test/bean/exam/Xml.hbm.xml" /></p><p&g
73、t; <mapping resource="com/briup/test/bean/exam/State.hbm.xml" /></p><p> <mapping resource="com/briup/test/bean/exam/Examstate.hbm.xml" /></p><p> <mapping
74、resource="com/briup/test/bean/people/Admin.hbm.xml" /></p><p> <mapping resource="com/briup/test/bean/people/Jteacher.hbm.xml" /></p><p> <mapping resource=&quo
75、t;com/briup/test/bean/people/Teacher.hbm.xml" /></p><p> <mapping resource="com/briup/test/bean/people/Student.hbm.xml" /></p><p> <mapping resource="com/briup/
76、test/bean/exam/Chengji.hbm.xml" /></p><p> <mapping resource="com/briup/test/bean/exam/Banji.hbm.xml" /></p><p> <mapping resource="com/briup/test/bean/exam/Kao
77、hao.hbm.xml" /></p><p> </session-factory></p><p> </hibernate-configuration></p><p><b> 5、結(jié)束語</b></p><p> 當(dāng)今許多高校都非常關(guān)注無紙化網(wǎng)絡(luò)考試的開發(fā)與應(yīng)用,
78、本文是通過考試方面進(jìn)行的嘗試,實(shí)踐證明,該方法是可行的;我們結(jié)合企業(yè)的開發(fā)技術(shù)及在校所學(xué)理論知識(shí)(軟件工程,操作系統(tǒng),數(shù)據(jù)結(jié)構(gòu)等學(xué)科),利用畢業(yè)設(shè)計(jì)的機(jī)會(huì),開發(fā)一套在線考試系統(tǒng),基本上實(shí)現(xiàn)了在線考試及考試管理等功能。</p><p> 由于技術(shù)有限,該系統(tǒng)存在很多不足之處,有待進(jìn)一步改進(jìn)和完善。</p><p><b> 參考文獻(xiàn)</b></p>&
79、lt;p> [1] 張孝祥IT課堂系統(tǒng)---Java就業(yè)培訓(xùn)教程(網(wǎng)上課堂).</p><p> [2] http://java.sun.com(java 官方網(wǎng)站).</p><p> [3] http://www.cn-java.com (中國java網(wǎng)站).</p><p> [4] 耿祥義.Java基礎(chǔ)教程[M].北京.清華大學(xué)出版社. 200
80、4.9:10-50</p><p> [5] Bruce Eckel.Java編程思想[M].北京.機(jī)械工業(yè)出版社. 2002.9:30-280 </p><p> [6] (美)舒爾第.Java2-The complete reference[M].北京.電子工業(yè)出版社. 2003.1:20-100</p><p> [7] (美)Marty Hall.Se
81、rvlet與JSP權(quán)威指南[M].北京v機(jī)械工業(yè)出版社. 2002.10:30-350</p><p> [8] (美)Marty Hall.JavaScript高級(jí)程序設(shè)計(jì)[M].北京.人民郵電出版社. 2006.11:50-200</p><p> [9](美)David Flanagan.JavaScript權(quán)威指南[M].北京.機(jī)械工業(yè)出版社. 2003.1:10-200<
82、;/p><p> [10] 梁立新.項(xiàng)目實(shí)踐精解:基于struts-spring-hibernate的Java應(yīng)用開發(fā)[M].北京.電子工業(yè)出版社. 2006.8:10-300</p><p> [11] 邱哲等.Struts Web設(shè)計(jì)與開發(fā)大全[M].北京.清華大學(xué)出版社. 2006.8:10-208</p><p> [12] 張洪偉.Tomcat Web開
83、發(fā)及整合應(yīng)用[M].北京.清華大學(xué)出版社. 2006.8:10-230</p><p> [13] 郭鋒等.Spring 從入門到精通[M].北京.清華大學(xué)出版社. 2006.8:10-250</p><p> [14] 蔡雪燾.Hibernate開發(fā)及整合應(yīng)用大全[M].北京.清華大學(xué)出版社. 2006.8:10-200</p><p> [15] 高寅.系
84、統(tǒng)分析之路[M].北京.電子工業(yè)出版社. 2005.5:30-200</p><p> [16] 范云之.基于Web數(shù)據(jù)庫在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)研究[J].商丘師范學(xué)院學(xué)報(bào)第22卷第5期 2006.10:1-20</p><p> On-line examination system base on JAVA</p><p> Student :zhang
85、yanhui supervisor:zhang zhiqiang</p><p> 【ABSTRACT】On-line examination system the aim is carry out examination of have no the paper turn a management, can carry on through Internet net or bureau area net t
86、o some examinations of categories, convenient school square test the management of duty, also convenient the examinee is particularly suitable for examinee to distribute widely and not easily concentrated of long range e
87、ducation.I mainly develop the system-JAVA of the backstage management's on-line examination management sub- system o</p><p> Keyword:JSP, JAVA,2000 databases of the SQL Server, mode of B/ S</p>&
88、lt;p><b> 后記</b></p><p> 在設(shè)計(jì)與制作中,我們發(fā)現(xiàn)了很多問題,我更深刻的明白理論與現(xiàn)實(shí)之間的差距,想到不如做到,要做就做最好。既然做了就要做好。</p><p> 正在這時(shí)候xx的風(fēng)暴迎面沖來,來的那么快,那么猛烈,讓我感到害怕,人的生命在大自然面前如此脆弱,我們應(yīng)該珍惜每一個(gè)機(jī)會(huì)去回報(bào)社會(huì),去幫助更多更多需要幫助的人。這也就是我
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計(jì)--基于java的在線考試系統(tǒng)
- 基于java ee的在線考試系統(tǒng)畢業(yè)設(shè)計(jì)
- java在線考試系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)----基于bs模式的java在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)論文---基于java的在線考試系統(tǒng)的設(shè)計(jì)
- 【資料下載】基于java語言的在線考試系統(tǒng)設(shè)計(jì)_畢業(yè)設(shè)計(jì)論文[原創(chuàng)精品]
- 基于java的在線考試系統(tǒng)(畢業(yè)論文)
- 基于java的在線考試系統(tǒng)畢業(yè)論文
- 基于java的在線考試系統(tǒng)畢業(yè)論文
- 畢業(yè)設(shè)計(jì)----基于java的在線購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于java語言的在線考試系統(tǒng)設(shè)計(jì)
- java考試系統(tǒng)畢業(yè)設(shè)計(jì)(論文)
- 基于java的在線考試系統(tǒng)
- 基于java的在線考試系統(tǒng)
- 基于java的在線考試系統(tǒng)
- 基于jsp的在線考試系統(tǒng)畢業(yè)設(shè)計(jì)
- 基于java的在線考試系統(tǒng)
- 基于web的在線考試系統(tǒng)畢業(yè)設(shè)計(jì)
- 基于java在線考試系統(tǒng)
- 畢業(yè)論文——基于jsp的java在線考試系統(tǒng)
評(píng)論
0/150
提交評(píng)論