版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、基于java的在線考試系統(tǒng)畢業(yè)設(shè)計論文基于java的在線考試系統(tǒng)姓 名: 學 號:院系:計算機與信息工程學院學 校:內(nèi)蒙古師范大學基于java的在線考試系統(tǒng)學生:國 指導教師:【內(nèi)容提要】 二十一世紀是信息時代的一個新起點,我們的信息技術(shù)的發(fā)展已經(jīng)延伸到各個領(lǐng)域,對于我一個大學生我想到了考試,于是我們設(shè)計了一個考試系統(tǒng),對一些科目的考試可以通過互聯(lián)網(wǎng)絡(luò)或局域網(wǎng)進行,方便校方考務(wù)的管理,也方便了考生,尤其適合考生分布廣,不易集中的遠程教育。我們主要開發(fā)系統(tǒng)的后臺管理系統(tǒng)java在線考試管理子系統(tǒng),它包括試題管理、考生管理、在線制作試卷、控制學生考試的設(shè)置、試卷審批等功能。我要寫的就是在線考試管理
2、子系統(tǒng)的分析、設(shè)計和開發(fā)的全部過程。運用er圖,程序流程圖等對在線管理子系統(tǒng)的設(shè)計過程進行的說明。全文共分為開發(fā)方案、需求分析、系統(tǒng)設(shè)計、關(guān)鍵技術(shù)解決,結(jié)論幾個部分。開發(fā)方案中主要介紹開發(fā)在線考試系統(tǒng)得目的、開發(fā)方案的選擇及開發(fā)框架的技術(shù)的確定;需求分析介紹了在線考試系統(tǒng)的總體需求及系統(tǒng)各模塊的功能需求;系統(tǒng)設(shè)計介紹了系統(tǒng)設(shè)計的指導思想、數(shù)據(jù)庫的設(shè)計、系統(tǒng)模塊的設(shè)計;關(guān)鍵技術(shù)介紹了在具體實現(xiàn)時需解決的一些技術(shù),如開發(fā)框架的整合技術(shù)、開發(fā)框架與數(shù)據(jù)庫的連接及數(shù)據(jù)的備份與還原?!娟P(guān)鍵詞】:在線考試,jsp,java,oracle9i/10g數(shù)據(jù)庫,b/s模式前言 網(wǎng)上考試系統(tǒng)前言 21.1問題分析
3、41.2項目目的51.3方案選擇51.4開發(fā)框架技術(shù)82、需求分析92.1任務(wù)概述92.2功能需求概述92.2運行環(huán)境103、系統(tǒng)設(shè)計103.1指導思想103.2系統(tǒng)結(jié)構(gòu)圖123.3數(shù)據(jù)庫設(shè)計144、系統(tǒng)架構(gòu)與數(shù)據(jù)庫的連接165、結(jié)束語19參考文獻19【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 to some exa
4、minations 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 education.i mainly develop the system-java of the backstage managements on-line examination
5、 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 examination and approval etc. function.this thesis mainly introduced to manage the analysis, design of the sub
6、- system and all processes of the development to javas on-line examination.make use of er diagram, procedure flow chart etc. to on-line manage the design process of sub- system to carry on expatiation.the full text is totally divided into the design, key technique of the analysis, system of the deve
7、lopment project, need to solve, conclusion five part.develop the main introduction in the project develops on-line examination system purpose, development project of choice and development frame of the assurance of technique;the need analysis introduced the total need of the on-line examination syst
8、em and the function request of each mold of system piece;the system design introduced the design, system mold of the instruction thought, database of system design the design of the piece;the key technique introduced at concrete carry out need some techniques for solve, such as development frame of
9、integration technique, development frame with the database link and the backup and revivification of data.21后記21當今社會,考試已經(jīng)是我們必不可少的東西了,從小到大我們已經(jīng)考過無數(shù)次了,以后還要考,不管是國內(nèi)還是國外的各大廠家,都在不斷的推出一系列的考試、認證。又是要我們?nèi)タ荚?。我們國家的自考或是成考,以及各省市的各種考試,現(xiàn)在都在朝著信息化的道路前進在走。我們相信在今后這一系列的考試將會走向網(wǎng)絡(luò)化考試的。這樣才是符合信息技術(shù)發(fā)展的方向。我們要給不同的考試同一個好的解決方案。 這個方案
10、在技術(shù)上來講我們是采用b/s模式。 在windows/linux平臺上,使用ie瀏覽器,完成抽題、考試、交卷等考試任務(wù)。方便,簡單的完成各種考試,這也是我們的目的所在??键c模塊通過網(wǎng)絡(luò)獲取題庫,按照題庫中的抽題策略,自動給每個考生生成一份試卷,考生在線作答,考試結(jié)果數(shù)據(jù)通過網(wǎng)絡(luò)回收,系統(tǒng)自動進行判分,生成考試成績和統(tǒng)計數(shù)據(jù)。“在線考試系統(tǒng)”是集合現(xiàn)代考試理論、方法和現(xiàn)代信息技術(shù)手段的智能化網(wǎng)上考試系統(tǒng),為學生個性化學習提供“靈活、方便、科學、公平”的“個別化考試服務(wù)”,是終結(jié)性評價系統(tǒng)。學生可以隨時、隨地進行課程結(jié)業(yè)考試。學校與社會上的各種考試大都采用傳統(tǒng)的考試方式,在此方式下,組織一次考試至
11、少要經(jīng)過五個步驟,即人工出卷,考生考試,人工閱卷,成績評估和試卷分析。顯然,隨著考試類型的不斷增加及考試要求的不斷提高,教師的工作量將會越來越大,并且其工作將是一件十分煩瑣和非常容易出錯的事情,可以說傳統(tǒng)的考試方式已經(jīng)不能適應現(xiàn)代考試的需要。隨著計算機應用的迅猛發(fā)展,網(wǎng)絡(luò)應用不斷擴大,如遠程教育和虛擬大學的出現(xiàn)等等,且這些應用正逐步深入到千家萬戶。人們迫切要求利用這些技術(shù)來進行在線考試,以減輕教師的工作負擔及提高工作效率,與此同時也提高了考試的質(zhì)量,從而使考試更趨于公證、客觀、更加激發(fā)學生的學習興趣。例如目前許多國際著名的計算機公司所舉辦的各種認證考試絕大部分采用這種方式。為了適應新形勢的發(fā)展
12、,我們推出了這一系統(tǒng),使其盡快在各類考試中發(fā)揮高效,便捷的作用,把老師從繁重的工作中解脫出來。在這里不得不說“老師們,你們辛苦了”;1、系統(tǒng)需求分析1.1問題分析在以往傳統(tǒng)的學校教學中,進行考試,要求老師刻試卷、印試卷、安排考試、監(jiān)考、收集試卷、評改試卷、講評試卷和分析試卷,這是一個繁雜的過程,需要大量人力、物力與時間的投入,已經(jīng)越來越不適應學校信息化建設(shè)與現(xiàn)代教學的需要。尤其在遠程網(wǎng)絡(luò)教學中,學生分布廣,不易統(tǒng)一集中安排考試,給校方和學生帶來了眾多的不便。而在線考試系統(tǒng),正是信息化建設(shè)的產(chǎn)物,它是傳統(tǒng)考場的延伸。它可以利用互聯(lián)網(wǎng)絡(luò)和局域網(wǎng),隨時隨地的對學生進行考試,加上數(shù)據(jù)庫技術(shù)的利用,大大
13、簡化了傳統(tǒng)考試的過程,因此在線考試是電子化教學的不可缺少的輔助手段。在當今信息時代,計算機技術(shù)與網(wǎng)絡(luò)技術(shù)越來越廣地應用于各個領(lǐng)域,改變著人們的學習、工作、生活乃至思維方式,也引起了教育領(lǐng)域的重大變革。將計算機與網(wǎng)絡(luò)技術(shù)應用于現(xiàn)代高等教育中,是現(xiàn)代高等教育發(fā)展的需要,也是改革教育模式,提高學校教學效果和教學效率、提高科研和管理水平的必要手段。1.2項目目的在線考試系統(tǒng)的總體目標:1、 在線考試系統(tǒng)可以幫助教師完成一個考試從題目設(shè)計,考試安排,考試實施,考卷批改到分數(shù)統(tǒng)計總結(jié)的所有工作。2、 所有的考試數(shù)據(jù)和其它數(shù)據(jù)庫需要一種主流的方式進行存儲和管理,例如使用數(shù)據(jù)庫技術(shù)。3、 考試數(shù)據(jù)的存放和處理
14、必須對考試保密,需要一定的安全性保障。對考試的系統(tǒng)目標:1、 這個軟件是分布式的,這意味著只要有考試客戶端可以連接到考試應用服務(wù)器,任何考生在任何地方進行身份確認,都能完成考試。2、 題目最好有一定的穩(wěn)定性和隨機性。穩(wěn)定性可以保證每一次考試對每一個考生是公平的,隨機性可以避免作弊的發(fā)生。3、 考試的部分結(jié)果在考生考完之后就可以知道,同時監(jiān)考教師可以根據(jù)同學們答題的情況作備注記錄對教師的系統(tǒng)目標:1、 提供一個功能全面的考核管理客戶端,可以進行考試設(shè)計和安排。2、 通過管理客戶端,教師可以進行考試的身份管理。3、 考生的考試結(jié)果可以被保存下來,供教師進行分析統(tǒng)計和察看。1.3方案選擇1、 開發(fā)在
15、線考試系統(tǒng),提出以下解決方案:選擇oracle作為后臺的數(shù)據(jù)庫,選擇java、jsp、javascript、html作為應用程序開發(fā)工具,運用tomcat服務(wù)器技術(shù),整個系統(tǒng)完全基于b/s (browser/server)模式進行設(shè)計,采用strus框架進行架構(gòu)。2、 java簡介java是sun公司推出的新的一代面向?qū)ο蟪绦蛟O(shè)計語言,特別適合于internet應用程序開發(fā)。java的產(chǎn)生與流行是當今internet發(fā)展的客觀要求,java是一門各方面性能都很好的編程語言,它的基本特點是簡單、面向?qū)ο?、分布式、解釋的、健壯的、安全的、結(jié)構(gòu)中立的、可移植的、性能很優(yōu)異的、多線程的、動態(tài)的,特別適
16、合在internet環(huán)境上開發(fā)的應用系統(tǒng)。3、 web應用程序開發(fā)環(huán)境jsp技術(shù)jsp的全稱是java server pages,它是sun推出的一種動態(tài)網(wǎng)頁技術(shù)標準。它在傳統(tǒng)的靜態(tài)頁面文件(*.html,*.htm)中加入java程序片段和jsp標記,就構(gòu)成了jsp頁面。jsp具有以下的優(yōu)點:a) 將業(yè)務(wù)層與表示層分離:使用jsp技術(shù),網(wǎng)絡(luò)開發(fā)人員可充分使用html來設(shè)計頁面顯示部分(如字體顏色等),并使用jsp指令或者java程序片段來生成網(wǎng)頁上的動態(tài)內(nèi)容;b) 能夠跨平臺:jsp支持絕大部分平臺,包括現(xiàn)在非常流行的linux系統(tǒng),應用非常廣泛的apache服務(wù)器也提供了支持jsp的服務(wù);
17、c) 組件的開發(fā)和使用很方便:如asp的組件是由c+,vb等語言開發(fā)的,并需要注冊才能使用;而jsp的組件是用java開發(fā)的,可以直接使用;d) 一次編寫,處處運行:作為java開發(fā)平臺的一部分,jsp具有java的所有優(yōu)點,包括write once , run everywhere.4、 tomcat應用服務(wù)器目前支持jsp的應用服務(wù)器是較多的,tomcat是其中較為流行的一個web服務(wù)器,被javaworld雜志的編輯選為2001年度最具創(chuàng)新的java產(chǎn)品,可見其在業(yè)界的地位。 tomcat是一個免費的開源的serlvet容器,在tomcat中,應用程序的部署很簡單,你只需將你的war放到
18、tomcat的webapp目錄下,tomcat會自動檢測到這個文件,并將其解壓。你在瀏覽器中訪問這個應用的jsp時,通常第一次會很慢,因為tomcat要將jsp轉(zhuǎn)化為servlet文件,然后編譯。編譯以后,訪問將會很快。tomcat也具有傳統(tǒng)的web服務(wù)器的功能:處理html頁面。但是與apache相比,它的處理靜態(tài)html的能力就不如apache。我們可以將tomcat和apache集成到一塊,讓apache處理靜態(tài)html,而tomcat處理jsp和servlet。tomcat是一個很好的工具,不僅僅因為其免費,功能強大,更因為其開放性,越來越受到人們的重視。5、 oracleoracle
19、全球公認最好的數(shù)據(jù)庫提供商在8i之前支持1024p,9i之后沒有限制(m-g-t-p-e)中國最早在保險業(yè)使用oracleoracle的版本1978年 oracle 11980年 oracle 21982年:oracle 3用c重寫 ,跨平臺1986年: oracle 5,關(guān)系型已經(jīng)成熟1989年 oracle6 實現(xiàn)熱備份1993年 oracle7,登陸中國1997年 oracle81999年 oracle8i 用java實現(xiàn)oracle 具有如下特性: l 其數(shù)據(jù)庫引擎提供完整的 xml 支持l 一個數(shù)據(jù)庫引擎可以在不同的平臺上使用l 其關(guān)系數(shù)據(jù)庫引擎支持當今苛刻的數(shù)據(jù)處理環(huán)境所需的功能。
20、l 一系列管理和開發(fā)工具,是其系統(tǒng)容易安裝 、部署、管理和使用。l 有析取和分析匯總數(shù)據(jù)以進行聯(lián)機分析處理 (olap) 的工具6、 b/s 開發(fā)模式伴隨著internet的迅速發(fā)展,計算機技術(shù)正在由基于c/s(client/ server)模式的應用系統(tǒng)轉(zhuǎn)變?yōu)榛赽/s模式的應用系統(tǒng)。過去,網(wǎng)絡(luò)軟件的開發(fā)都采用c/s(client)模式,在這種模式下,主要的業(yè)務(wù)邏輯都集中于客戶端程序,因此,必然導致以下問題:a) 系統(tǒng)安裝、調(diào)試、維護和升級困難。由于客戶端的硬件配置可能存在差異,軟件環(huán)能各不相同,因此,在安裝時,必須對每一個客戶端分別進行配置,同樣,在軟件升級時也要對客戶端分別處理。b) 在
21、整個系統(tǒng)中,業(yè)務(wù)邏輯和用戶界面都集中到了客戶端,必然會增加安全隱患。b/s模式帶來了巨大的好處:a) 開發(fā)成本及維護成本降低。由于b/s架構(gòu)管理軟件只安裝在服務(wù)器端(server)上,即應用程序在部署、升級、維護時,只需要在服務(wù)器端進行配置就可以了,網(wǎng)絡(luò)管理人員只需要管理服務(wù)器就行了,用戶界面主要事務(wù)邏輯在服務(wù)器(server)端完全通過www瀏覽器實現(xiàn),極少部分事務(wù)邏輯在前端(browser)實現(xiàn),所有的客戶端只有瀏覽器,網(wǎng)絡(luò)管理人員只需要做硬件維護。b) 良好的安全性能,防火墻技術(shù)可以保證后臺數(shù)據(jù)庫的安全性。所有的配置工作都集中在服務(wù)器端且所有客戶端請求都是通過dbms來訪問數(shù)據(jù)庫,從而大
22、大減少了數(shù)據(jù)直接暴露的風險。1.4開發(fā)框架技術(shù)對于框架技術(shù),我們采用struts+hibernate的整合,其實任何一種框架都可以完成我們的項目,但我們選擇三種框架的組合是因為三種框架各有好處,我們利用它們的優(yōu)點,來避免它們的缺點,充分利用java技術(shù)在web的應用。l struts是應用比較廣泛的一種表現(xiàn)層框架struts是一個為開發(fā)基于模型(model)視圖(view)控制器(controller)(mvc)模式的應用架構(gòu)的開源框架,是利用servlet,jsp和custom tag library構(gòu)建web應用的一項非常有用的技術(shù)。由于struts能充分滿足應用開發(fā)的需求,簡單易用,敏捷
23、迅速。它使用服務(wù)層框架可以將javabeans從jsp/servlet中分離出來,而使用表現(xiàn)層框架則可以將jsp中剩余的javabeans完全分離,這部分javabeans主要負責顯示相關(guān)信息,一般是通過標簽庫(taglib)實現(xiàn),不同框架有不同自己的標簽庫,struts是應用比較廣泛的一種表現(xiàn)層框架。l ajaxajax(asynchronous javascript and xml)利用javascript和xml兩種技術(shù)以一種新的方式組合起來的一門客戶端技術(shù)。它解決了以下問題: 1) 當前頁面的內(nèi)容丟失,處于空白狀態(tài) 2) 用戶當前的操作被中斷 3) 如果頁面內(nèi)容要局部更新的話,整個頁面
24、要全部被刷新。 使用目的:解決以上的問題 功能:用于客戶端和服務(wù)器數(shù)據(jù)的異步傳輸 范圍:任何java應用l hibernate通過持久層的框架將數(shù)據(jù)庫存儲從服務(wù)層中分離出來它是o/r mapping的一種實現(xiàn)是目前在java界使用非常廣泛的o/r mapping的一種實現(xiàn),可以實現(xiàn)關(guān)系型數(shù)據(jù)庫和對象之間的映射。用來開發(fā)數(shù)據(jù)庫系統(tǒng)非常方便,可以將數(shù)據(jù)庫和程序的設(shè)計融合在一起。表現(xiàn)層和服務(wù)層的分離是通過兩種框架達到目的的,剩余的就是持久層框架了,通過持久層的框架將數(shù)據(jù)庫存儲從服務(wù)層中分離出來就是其目的,持久層框架有兩種方向:直接自己編寫jdbc等sql語句(如ibatis);使用o/r mappi
25、ng技術(shù)實現(xiàn)的hibernate和jdo技術(shù);當然還有ejb中的實體bean技術(shù)。hibernate的工作原理是通過文件把值對象和數(shù)據(jù)庫表之間建立起一個映射關(guān)系,這樣,我們只需要通過操作這些值對象和hibernate提供的一 些基本類,就可以達到使用數(shù)據(jù)庫的目的。例如,使用hibernate的查詢,可以直接返回包含某個值對象的列表(list),而不必向傳統(tǒng)的jdbc訪問方式一樣把結(jié)果集的數(shù)據(jù)逐個裝載到一個值對象中,為我們的編碼工作節(jié)省了大量的勞動。hibernate提供的hql是一種類sql語言,是提供對象化的數(shù)據(jù)庫查詢方式,但hql在功能和使用方式上都非常接近于標準的sql2、需求分析2.1
26、任務(wù)概述在線考試管理子系統(tǒng)主要實現(xiàn)題庫管理、在線制作試卷、在線控制考試、自動評分、自動交卷、考生管理、成績查詢、試卷管理等功能,充分利用計算機科學與技術(shù),改變傳統(tǒng)的考試操作方式,實現(xiàn)無紙化考試的模式。2.2功能需求概述系統(tǒng)需要解決的主要問題我主要開發(fā)的是教師管理子系統(tǒng),在此系統(tǒng)中我們主要對前臺考試系統(tǒng)的顯示信息進行管理和設(shè)置。我將子系統(tǒng)分為以下功能模塊: 教師管理用戶管理考試統(tǒng)計試題講解 監(jiān)考教師管理查看考生情況查看考試情況開始考試結(jié)束考試考試統(tǒng)計:用于查看考試的信息試題講解:可對本次考試進行試卷的講解用戶管理:對本用戶的信息進行修改查看考試情況:對不同的班級和科目進行統(tǒng)計,統(tǒng)計分為:不及格、
27、及格、中等、良好、優(yōu)秀五個等級,統(tǒng)計值為各個等級所占的百分比.查看考生情況:可以查看不同班級的不同科目的考試的詳細情況開始考試:監(jiān)考教師點擊考試考試按鈕后,考生才能考試考試,否則沒有試題。結(jié)束考試:監(jiān)考教師點擊結(jié)束考試按鈕后,考生不能再提交考卷。2.2運行環(huán)境l 硬件需求: piii/256m/10g 及以上配置,要求為考試系統(tǒng)分配足夠的數(shù)據(jù)庫磁盤空間l 推薦配置: piv 2g/512m/40gl 操作系統(tǒng)需求: windows2000及以上操作系統(tǒng) ( 推薦 ) ,也可以使用 sun solaris 等 linux 操作系統(tǒng)l 數(shù)據(jù)庫軟件需求: oracle 9i/oracle 10g 數(shù)
28、據(jù)庫l 中間件軟件需求:tomcat系列服務(wù)器3、系統(tǒng)設(shè)計3.1指導思想、b/s結(jié)構(gòu)開發(fā)思想b/s(browser/server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著internet技術(shù)的興起,對c/s結(jié)構(gòu)的一種變化或者改進的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過www瀏覽器來實現(xiàn),極少部分事務(wù)邏輯在前端(browser)實現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(server)實現(xiàn),形成所謂三層(3-tier)結(jié)構(gòu)。一個三層架構(gòu)的應用程序由三部分組成,這三部分各自分布在網(wǎng)絡(luò)中的不同地方。這三個部分分別是:工作站或表示層接口、事務(wù)邏輯、數(shù)據(jù)庫以及與其相關(guān)的程序設(shè)計。在一個典型的三層架構(gòu)應用程序中,應用程序
29、的用戶工作站包括提供圖形用戶界面(gui)的程序設(shè)計和具體的應用程序入口表格或交互式窗口。事務(wù)邏輯處在局域網(wǎng)(lan)服務(wù)器或其他共享主機上,它作為響應工作站所發(fā)出客戶請求的服務(wù)器,而相對于處于大型機的第三層它是作為客戶端,并且決定需要什么數(shù)據(jù)以及數(shù)據(jù)存儲在哪里。第三層包括數(shù)據(jù)庫以及處理讀寫以及訪問數(shù)據(jù)庫的程序。然而應用程序的設(shè)計可能比這個架構(gòu)要復雜,對于大型程序來說,這個三層模式是一種比較簡便的考慮方法。這種應用程序的設(shè)計使用客戶/服務(wù)器模式,各層可以同時開發(fā),并且可以由不同的成員組用不同的語言來開發(fā)。因為各個層次的開發(fā)不會影響其他層次,所以這種模型對于進一步開發(fā)軟件是很方便的。這樣就大大簡
30、化了客戶端電腦載荷,減輕了系統(tǒng)維護與升級的成本和工作量,降低了用戶的總體成本(tco)。以目前的技術(shù)看,局域網(wǎng)建立b/s結(jié)構(gòu)的網(wǎng)絡(luò)應用,并通過internet/intranet模式下數(shù)據(jù)庫應用,相對易于把握、成本也是較低的。它是一次性到位的開發(fā),能實現(xiàn)不同的人員,從不同的地點,以不同的接入方式(比如lan, wan, internet/intranet等)訪問和操作共同的數(shù)據(jù)庫;它能有效地保護數(shù)據(jù)平臺和管理訪問權(quán)限,服務(wù)器數(shù)據(jù)庫也很安全 。特別是在java這樣的跨平臺語言出現(xiàn)之后,b/s架構(gòu)管理軟件更是方便、快捷、高效。、系統(tǒng)工程的流程思想我們在系統(tǒng)開發(fā)過程中,采用軟件工程的開發(fā)管理,在開發(fā)的
31、過程中也遵循軟件工程的思想,軟件工程的主要環(huán)節(jié)有:人員管理(自己模擬)、項目管理(我的小組模擬)、可行性與需求分析、系統(tǒng)設(shè)計、程序設(shè)計、測試、維護等,如圖1.1所示。 、面向?qū)ο髾C制的設(shè)計思想所有計算機均由兩種元素組成:代碼和數(shù)據(jù)。精確的說,有些程序是圍繞著什么正在發(fā)生而編寫,有些則是圍繞誰正在受影響而編寫的。第一種編程方式叫做面向過程的模型,按這種模型編寫的程序以一系列的線性步驟(代碼)為特征,可被理解為作用于數(shù)據(jù)的代碼。如 c 等過程化語言。第二種編程方式叫做面向?qū)ο蟮哪P?,按這種模型編寫的程序圍繞著程序的數(shù)據(jù)(對象)和針對該對象而嚴格定義的接口來組織程序,它的特點是數(shù)據(jù)控制代碼的訪問.通
32、過把控制權(quán)轉(zhuǎn)移到數(shù)據(jù)上,面向?qū)ο蟮哪P驮诮M織方式上有:抽象、封裝、繼承和多態(tài)的好處。、代碼分層思想由于采用b/s設(shè)計模式分層思想,同時根據(jù)軟件工程的管理思想及系統(tǒng)分析的設(shè)計與分析的思想進行系統(tǒng)的開發(fā),利用java語言開發(fā)web應用程序,提供string+hibernate+spring框架對系統(tǒng)的程序代碼結(jié)構(gòu)進行分層。分層的策略如下:servicelocator表示層strutsstruts action,actionform,jsp,ajaxstruts-config.xml,dao classes業(yè)務(wù)層servicehibernate session management持久層hibern
33、atedatasource/connection pooltransactionsbusiness service classesquerylanguage support and other hibernate servicesdomain model business objectsstruts-spring-hibernate 架構(gòu)3.2系統(tǒng)結(jié)構(gòu)圖、本系統(tǒng)分為學生前臺子系統(tǒng)和考試管理子系統(tǒng),整個系統(tǒng)的結(jié)構(gòu)圖如下:在線考試系統(tǒng)考生前 臺后臺管 理題庫管理 班級管理考試管理試卷管理成績管理用戶管理權(quán)限管理學生登陸 系統(tǒng)部分功能序列圖用戶登錄序列圖:系統(tǒng)操作序列圖:3.3數(shù)據(jù)庫設(shè)計 根據(jù)系統(tǒng)需
34、要和考試需要,設(shè)立了如下數(shù)據(jù)庫表:examstate考試狀態(tài)表 字段類型 約束或索引 描述idnumberpk記錄流水號statenumber記錄考試狀態(tài)(1提交0未提交)state 字段名 字段類型 約束或索引 描述idnumberpk記錄流水號bajivachar2記錄班級beizhuvachar2考試的備注timedate考試的日期student字段名 字段類型約束或索引描述idnimberpk記錄流水號kaohaovarchar2考號namevarchar2學生姓名banjivarchar2班級passwordvarchar2學生密碼statenimber考試狀態(tài)1-在線0下線scor
35、enimber分數(shù)ipvarchar2ip地址teacher字段名 字段類型約束或索引描述idnimberpk記錄流水號namevarchar2教師姓名passwordvarchar2教師密碼statenimber考試狀態(tài)1-在線0下線ipvarchar2ip地址jteacher字段名 字段類型約束或索引描述idnimberpk記錄流水號namevarchar2監(jiān)考教師姓名passwordvarchar2監(jiān)考教師密碼statenimber考試狀態(tài)1-在線0下線admin字段名 字段類型約束或索引描述idnimberpk記錄流水號namevarchar2管理員姓名passwordvarchar2
36、管理員密碼statenimber考試狀態(tài)1-在線0下線ipvarchar2ip地址chengji字段名 字段類型約束或索引描述idnimberpk記錄流水號kaohaovarchar2考號namevarchar2學生姓名banjivarchar2班級kechengvarchar2課程maxscorenimber總分scorenimber分數(shù)banji字段名 字段類型約束或索引描述idnimberpk記錄流水號namevarchar2班級名稱numnimber班級人數(shù)classvarchar2所在的教室名稱timevarchar2開課的時間4、系統(tǒng)架構(gòu)與數(shù)據(jù)庫的連接對于數(shù)據(jù)庫的連接,我們的數(shù)據(jù)訪
37、問接口采用jdbc-odbc橋數(shù)據(jù)驅(qū)動程序,以純java的方式來連接數(shù)據(jù)庫,為訪問不同的數(shù)據(jù)庫提供統(tǒng)一的接口。jdbc數(shù)據(jù)庫驅(qū)動程序是把jdbc調(diào)用翻譯成廠商專用api的調(diào)用。開放數(shù)據(jù)連接(odbc)最初是為微軟操作系統(tǒng)上的sql提供api標準,后來也在其他的平臺上提供了支持。odbc為直接訪問數(shù)據(jù)定義了一組函數(shù),而不是在客戶應用程序中嵌入sql。jdbc-odbc橋在jdbc api 和odbc api 之間提供了一個橋梁,這個橋把標準的jdbc調(diào)用翻譯成對應的odbc調(diào)用,然后通過odbc api把它們發(fā)送到odbc數(shù)據(jù)源。在選擇了數(shù)據(jù)訪問接口后,開始利用這個原理進行具體的連接了。由于我們
38、開發(fā)時是利用mvc的設(shè)計模式,所以在此我們的數(shù)據(jù)庫連接是封存在m中的,即只要我們和m層連接上,就已經(jīng)連接上數(shù)據(jù)庫了。在m上我們采用hibernate框架技術(shù),以下是一個非常簡要的hibernate體系結(jié)構(gòu)的概要圖:從這個圖可以看出,hibernate使用數(shù)據(jù)庫和配置信息來為應用程序提供持久化服務(wù)(以及持久的對象)。我們只需在hibernate.cfg.xml中配置以下語句即可:!doctype hibernate-configuration public -/hibernate/hibernate configuration dtd 3.0/en truejdbc:oracle:thin:19
39、50:1521:briupdboracle.jdbc.driver.oracledriverjd0801jd0801org.hibernate.dialect.oracle9dialectmytest5、結(jié)束語 當今許多高校都非常關(guān)注無紙化網(wǎng)絡(luò)考試的開發(fā)與應用,本文是通過考試方面進行的嘗試,實踐證明,該方法是可行的;我們結(jié)合企業(yè)的開發(fā)技術(shù)及在校所學理論知識(軟件工程,操作系統(tǒng),數(shù)據(jù)結(jié)構(gòu)等學科),利用畢業(yè)設(shè)計的機會,開發(fā)一套在線考試系統(tǒng),基本上實現(xiàn)了在線考試及考試管理等功能。由于技術(shù)有限,該系統(tǒng)存在很多不足之處,有待進一步改進和完善。參考文獻1 張孝祥it課堂系統(tǒng)-java就業(yè)
40、培訓教程(網(wǎng)上課堂).2 (java 官方網(wǎng)站).3 - (中國java網(wǎng)站).4 耿祥義.java基礎(chǔ)教程m.北京.清華大學出版社. 2004.9:10-505 bruce eckel.java編程思想m.北京.機械工業(yè)出版社. 2002.9:30-280 6 (美)舒爾第.java2-the complete referencem.北京.電子工業(yè)出版社. 2003.1:20-1007 (美)marty hall.servlet與jsp權(quán)威指南m.北京v機械工業(yè)出版社. 2002.10:30-3508 (美)marty hall.javascript高級程序設(shè)計m.北京.人民郵電出版社. 2
41、006.11:50-2009(美)david flanagan.javascript權(quán)威指南m.北京.機械工業(yè)出版社. 2003.1:10-20010 梁立新.項目實踐精解:基于struts-spring-hibernate的java應用開發(fā)m.北京.電子工業(yè)出版社. 2006.8:10-30011 邱哲等.struts web設(shè)計與開發(fā)大全m.北京.清華大學出版社. 2006.8:10-20812 張洪偉.tomcat web開發(fā)及整合應用m.北京.清華大學出版社. 2006.8:10-23013 郭鋒等.spring 從入門到精通m.北京.清華大學出版社. 2006.8:10-25014
42、蔡雪燾.hibernate開發(fā)及整合應用大全m.北京.清華大學出版社. 2006.8:10-20015 高寅.系統(tǒng)分析之路m.北京.電子工業(yè)出版社. 2005.5:30-20016 范云之.基于web數(shù)據(jù)庫在線考試系統(tǒng)的設(shè)計與實現(xiàn)研究j.商丘師范學院學報第22卷第5期 2006.10:1-20on-line examination system base on javastudent :zhang yanhui supervisor:zhang zhiqiang【abstract】on-line examination system the aim is carry out examinati
43、on 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, 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 managements 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 c
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度年福建省高校教師資格證之高等教育心理學題庫檢測試卷A卷附答案
- 2024年度山西省高校教師資格證之高等教育法規(guī)能力提升試卷A卷附答案
- 2024年度年福建省高校教師資格證之高等教育學練習題及答案
- 全國職業(yè)院校技能大賽中職組(母嬰照護賽項)考試題及答案
- 四年級數(shù)學(小數(shù)加減運算)計算題專項練習與答案
- 建筑會議紀要
- 內(nèi)蒙古英語高二上學期期末試卷及解答參考(2024年)
- 高溫熱管換熱器的穩(wěn)定性設(shè)計和結(jié)構(gòu)參數(shù)優(yōu)化
- 2024房產(chǎn)領(lǐng)域聯(lián)合投資建設(shè)協(xié)議
- 吊車租賃業(yè)務(wù)協(xié)議2024詳細條款
- 吉林省白城市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名居民村民委員會明細
- 實驗五 PCR擴增課件
- 液化氣站氣質(zhì)分析報告管理制度
- 砍伐工程方案35963
- 《大醫(yī)精誠》說課(新)
- 牛羊屠宰管理辦法
- 《微觀經(jīng)濟學》課程思政教學案例(一等獎)
- DBJ50T-232-2016 建設(shè)工程監(jiān)理工作規(guī)程
- 國際人力資源管理課程教學大綱
- 深信服園區(qū)級雙活數(shù)據(jù)中心
- T-CSCS 016-2021 鋼結(jié)構(gòu)制造技術(shù)標準
評論
0/150
提交評論