CET在線考試模擬系統(tǒng)的設(shè)計與實現(xiàn)_第1頁
CET在線考試模擬系統(tǒng)的設(shè)計與實現(xiàn)_第2頁
CET在線考試模擬系統(tǒng)的設(shè)計與實現(xiàn)_第3頁
CET在線考試模擬系統(tǒng)的設(shè)計與實現(xiàn)_第4頁
CET在線考試模擬系統(tǒng)的設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、目目 錄錄第一章第一章 緒論緒論.- 1 -1.1 研究背景 .- 1 -1.2 技術(shù)選擇 .- 1 -1.3 開發(fā)工具的選用及介紹 .- 1 -1.3.1 MyEclipse 簡介.- 1 -1.3.2 Flash Builder4 簡介.- 2 -1.3.3 MYSQL 簡介.- 2 -第二章第二章 系統(tǒng)可行性研究系統(tǒng)可行性研究.- 3 -2.1 技術(shù)可行性研究 .- 3 -2.2 經(jīng)濟可行性研究 .- 3 -2.3 操作可行性研究 .- 3 -第三章第三章 系統(tǒng)需求分析系統(tǒng)需求分析.- 4 -3.1 系統(tǒng)工作流程 .- 4 -3.2 系統(tǒng)業(yè)務(wù)需求 .- 4 -3.3 設(shè)計思想 .- 4

2、-3.4 設(shè)計原則 .- 4 -3.5 業(yè)務(wù)流程分析 .- 5 -3.6 系統(tǒng)數(shù)據(jù)流分析 .- 6 -3.7 性能需求 .- 8 -3.8 運行需求 .- 8 -第四章第四章 系統(tǒng)設(shè)計系統(tǒng)設(shè)計.- 9 -4.1 系統(tǒng)功能結(jié)構(gòu)圖 .- 9 -4.2 系統(tǒng)功能設(shè)計 .- 9 -4.3 系統(tǒng)流程圖設(shè)計 .- 10 -4.4 系統(tǒng)數(shù)據(jù)庫設(shè)計 .- 13 -4.4.1 數(shù)據(jù)庫 ER 圖 .- 13 -4.4.2 數(shù)據(jù)庫表設(shè)計.- 14 -第五章第五章 系統(tǒng)實現(xiàn)系統(tǒng)實現(xiàn).- 18 -5.1 系統(tǒng)登錄首頁.- 18 -5.2 考試報名模塊.- 18 -5.3 系統(tǒng)登錄模塊 .- 20 -5.4 分數(shù)查詢模塊

3、.- 26 -結(jié)結(jié) 論論.- 27 -參考文獻參考文獻.- 28 -致致 謝謝.- 29 -附附 錄錄.- 30 -第一章第一章 緒論緒論1.1 研究背景網(wǎng)上考試在國外一些國家已經(jīng)得到了蓬勃發(fā)展,人們選學(xué)課程和考試都是通過網(wǎng)上進行的。例如國外一些著名的考試,如 Microsoft 公司的 MCSE(Microsoft 系統(tǒng)工程師認證考試)、GMAT(工商管理碩士入學(xué)考試)、托??荚?、GRE(美國研究生入學(xué)考試)等,都是采用網(wǎng)上考試的形式進行的?,F(xiàn)如今在我國英語等級考試成績?nèi)匀皇俏覈芏嗥髽I(yè)招聘的標準衡量,這也是我國廣大學(xué)生求職的重磅籌碼,故而英語四級考試可謂是遍及全國各高校的人員密集的考試,對

4、于如此的大型考試使用現(xiàn)今的傳統(tǒng)考試方式是非常的浪費人力,物力和財力的。目前許多的專業(yè)考試已逐步出現(xiàn)從筆試轉(zhuǎn)為計算機網(wǎng)絡(luò)考試的發(fā)展趨勢。與傳統(tǒng)的筆試相比,計算機在線考試系統(tǒng)有多方面的優(yōu)勢。首先,可以省去試卷印刷的費用,減輕教師閱卷的負擔(dān),節(jié)省了人力、物力、財力,加快考試進程。其次,可以充分發(fā)揮計算機在信息處理方面的優(yōu)勢,如建立海量的題庫供將來使用、對試卷結(jié)果進行自動化統(tǒng)計分析從而提供有價值的信息等等。在我國,雖然遠程教育已經(jīng)蓬勃發(fā)展起來,但是目前學(xué)校與社會上的各種考試大都仍采用傳統(tǒng)的考試方式。在此方式下,組織一次考試一般需要經(jīng)過人工出題、考生考試、人工閱卷、成績評估、試卷分析等五個步驟。隨著考試

5、題型的不斷變化及要求的不斷提高,教師的工作量將會越來越大,其工作方式十分繁瑣,且容易出錯。從這個角度出發(fā),可以說傳統(tǒng)的考試方式已經(jīng)不再適應(yīng)現(xiàn)代考試的需要,考試方式的變革勢在必行。所以英語四級考試的在線考試方式也是勢在必行的。1.2 技術(shù)選擇 本考試系統(tǒng)采用前臺和后臺分離式的開發(fā),后臺開發(fā)選取的是一種簡單的,跨平臺的面向?qū)ο蟮?,分布式的,解釋的,健壯的安全的,結(jié)構(gòu)的中立的,可移植的,性能很優(yōu)異的多線程的,動態(tài)的語言JAVA 語言。前臺使用的是 Flex 框架,它是采用 GUI 界面開發(fā),使用基于 XML 的 MXML 語言, 脫離傳統(tǒng) B/S 軟件對美工的依賴,純粹依靠開發(fā)人員來構(gòu)建軟件系統(tǒng)。應(yīng)

6、用hibernate 框架技術(shù)實現(xiàn)數(shù)據(jù)持久化。使用BlazeDS 訪問數(shù)據(jù)持久化方案,實現(xiàn)前后臺的連接。1.3 開發(fā)工具的選用及介紹1.3.1 MyEclipse 簡介 MyEclipse 企業(yè)級工作平臺(MyEclipse Enterprise Workbench ,簡稱 MyEclipse)是對 Eclipse IDE 的擴展,利用它我們可以在數(shù)據(jù)庫和 JavaEE 的開發(fā)、發(fā)布,以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的 JavaEE 集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測試和發(fā)布功能,完整支持 HTML, Struts, JSP, CSS, Javascript,

7、 SQL, Hibernate。使用戶在開發(fā)代碼,測試,以及部署應(yīng)用方面都得到極大的便利。1.3.2 Flash Builder4 簡介 FlashBuilder4 是一款由 Adobe 公司開發(fā)的軟件。它可以幫助軟件開發(fā)人員使用開放源 Flex 框架快速開發(fā)跨平臺富 Internet 應(yīng)用程序(RIA)和內(nèi)容。它包含對智能編碼、調(diào)試及可視設(shè)計的支持,提供功能強大的測試工具,這些工具可以提高開發(fā)速度并創(chuàng)建出性能更高的應(yīng)用程序。1.3.3 MYSQL 簡介 MySQL 是一個小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),被廣泛地應(yīng)用在 Internet 上的中小型網(wǎng)站中。其自身特點為體積小、速度快、總體擁有成本低,

8、尤其是開放源碼;使用 C 和C+編寫,并使用了多種編譯器進行測試,保證源代碼的可移植性;支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、OpenBSD、OS/2 Wrap、Solaris、Windows 等多種操作系統(tǒng);優(yōu)化的 SQL 查詢算法,有效地提高查詢速度,可以處理擁有上千萬條記錄的大型數(shù)據(jù)庫。第二章第二章 系統(tǒng)可行性研究系統(tǒng)可行性研究2.1 技術(shù)可行性研究 本系統(tǒng)開發(fā)將要用到 Java,Hibernate,F(xiàn)lex4,MySQL 數(shù)據(jù)庫技術(shù)。另外硬件只需要一臺 PC 機,裝有軟件 MyEclipse,F(xiàn)lash Builder4 的開發(fā)

9、工具,利用 MySQL 作為后臺數(shù)據(jù)庫,使用 BlazeDS 連接 Java 和 Flex,利用 Tomcat 作為 Web 服務(wù)器,所以在這方面來說是可行的 。在此系統(tǒng)開發(fā)前 已經(jīng)掌握了開發(fā)考試系統(tǒng)方法和開發(fā)工具,并且在經(jīng)歷過多次英語四級考試和調(diào)查過程中,已經(jīng)了解和熟悉了在線考試系統(tǒng)的業(yè)務(wù)流程。綜上所述,本系統(tǒng)開發(fā)從技術(shù)上是可行的。2.2 經(jīng)濟可行性研究 從經(jīng)濟效益來分析,軟件的開發(fā)成本不大,選用的工具都是開源的免費工具,而其它的投入也只是電腦。電腦的普及也帶來了低成本投入。由于系統(tǒng)運行的基礎(chǔ)環(huán)境均已具備,無需重新開發(fā)建設(shè),所以系統(tǒng)開發(fā)、運行所需的費用是比較低的。而系統(tǒng)的效益很高可以提高管理

10、效率實現(xiàn)計算機化、系統(tǒng)化、規(guī)范化操作,效率大于投入,可行性很高。2.3 操作可行性研究本考試模擬系統(tǒng)主要面向所有的高校學(xué)生,再者系統(tǒng)考試流程基本上參照紙質(zhì)考試的流程而設(shè)計開發(fā)的。且本系統(tǒng)采用基于 Windows 的圖形用戶界面,而該系統(tǒng)是大家熟悉的操作系統(tǒng),對于那些有一般的計算機知識的人員就可以輕松上手。而整個考試系統(tǒng)采用最友好的交互界面,簡潔明了,不需要對數(shù)據(jù)庫進行深入的了解。由此,該系統(tǒng)的操作是可行的。綜合以上三方面,該系統(tǒng)具有很高的開發(fā)可行性,無論是從技術(shù)上或者經(jīng)濟上還是操作上。因此,有必要開發(fā)該系統(tǒng)。 第三章第三章 系統(tǒng)需求分析系統(tǒng)需求分析3.1 系統(tǒng)工作流程系統(tǒng)工作流程打開本系統(tǒng)首頁

11、展現(xiàn)系統(tǒng)的三個模塊分別為:考試報名,用戶登錄,分數(shù)查詢。分別可以進行在線報名參加考試,用戶登錄可以以不同的角色登錄進行不同的操作,考生可以在試卷修改完成后登錄分數(shù)查詢模塊進行分數(shù)查詢。3.2 系統(tǒng)業(yè)務(wù)需求系統(tǒng)業(yè)務(wù)需求 (1) 考試報名模塊,驗證考生不能重復(fù)報名,考生報名成功后保存信息,并生成準考證號碼供考生查分使用。報名信息必須真實,在成績合格證上將顯示報名信息。 (2) 用戶登錄需要身份的驗證,需要有不同的角色,系統(tǒng)暫設(shè)角色為:考生,教師,管理員。不同角色的權(quán)限和操作各不相同。考生需求:考生在進行考試前,能夠了解考試注意事項,以便能成功進行考試??忌M行考試時,能明確考試所用時間,考試時間結(jié)

12、束系統(tǒng)能自動交卷,并退出系統(tǒng),考生不能再作答??忌念}目能隨機生成,消除作弊現(xiàn)象??荚嚱Y(jié)束系統(tǒng)能自動統(tǒng)計考生的客觀題部分。教師需求:教師登錄進入教師模塊能看到有關(guān)自己的系統(tǒng)通告,教師功能能夠添加試題,批改考生主觀題試卷,修改完成系統(tǒng)將自動進行統(tǒng)分,并且能夠?qū)€人信息進行查看,修改。管理員需求:能夠?qū)π略隹碱}進行審核;隨機生成聽力試題;查看考生信息對考試信息進行刪除操作;可查看教師信息,并且可添加,刪除,修改教師信息,分配修改任務(wù)等操作;并且能對個人信息進行維護等。(3) 分數(shù)查詢,考生使用準考證號碼登錄查詢個人考試分數(shù)。3.3 設(shè)計思想設(shè)計思想(1) 系統(tǒng)分成幾個相對獨立的模塊,但這些模塊都進

13、行集中式管理。(2) 分層的模塊化程序設(shè)計思想,整個系統(tǒng)采用模塊化結(jié)構(gòu)設(shè)計。作為應(yīng)用程序有較強的可操作性和擴展性。(3) 合理的數(shù)據(jù)流設(shè)計,在應(yīng)用系統(tǒng)設(shè)計中,相對獨立的模塊間以數(shù)據(jù)流相互連接,使各模塊間的耦合性較低,方便系統(tǒng)運行,提高系統(tǒng)安全性。(4) 系統(tǒng)仿照現(xiàn)今的紙質(zhì)考試流程和模式進行數(shù)據(jù)庫設(shè)計和系統(tǒng)設(shè)計,使用戶在考試的過程中能操作方便簡單。3.4 設(shè)計原則設(shè)計原則為了使本系統(tǒng)功能齊全完備,操作簡便,最大限度的提高軟件的質(zhì)量,從而滿足用戶的實際需要,在設(shè)計開發(fā)過程中遵循了如下原則:(1) 公平性原則:實現(xiàn)考題的隨機性,不重復(fù),一次考試不能多次參加,題量統(tǒng)一的原則實現(xiàn)。(2) 實用性原則:適

14、合產(chǎn)品信息管理工作的實際需求,并能夠處理一些特殊情況的要求,此外,盡可能預(yù)留空間,以便擴充功能。(3) 準確性原則:對輸入的相關(guān)資料建立檢錯機制,及時報錯,使用戶能夠及時準確的輸入合法資料(如:類型匹配,長度不超限等)。(3) 易操作原則:要求設(shè)計的系統(tǒng)功能齊全,界面友好,操作方便,必要的地方進行提示。(5) 源程序可讀性原則:為了便于其他設(shè)計,維護人員讀懂代碼或以后的代碼修改,軟件升級維護,即可能做好代碼注釋工作。(6) 優(yōu)化原則:為了達到優(yōu)化的目的,合理的運用窗口,菜單,對象等的繼承,自定義用戶對象,事件,函數(shù),減少不必要的重復(fù)性代碼,使程序簡介明了,也方便了將來的維護。(7) 安全性原則

15、:可以為該系統(tǒng)的用戶設(shè)置用戶權(quán)限。3.5 業(yè)務(wù)流程分析在線考試系統(tǒng)主要是以科學(xué)的計算機技術(shù)和先進的數(shù)據(jù)庫管理技術(shù)來替代原始的紙質(zhì)考試模式。在系統(tǒng)的開發(fā)前,本人對英語考試業(yè)務(wù)流程進行了較深刻的調(diào)查。CET4 考試模擬系統(tǒng)的主要業(yè)務(wù)分析:(1)試卷生成業(yè)務(wù)試卷生成是實現(xiàn)在線考試系統(tǒng)及其重要的一環(huán),它關(guān)系到試卷的質(zhì)量能否得到保證,考試是否能夠勝利進行,能否保證考試的公平公正等問題。其業(yè)務(wù)的主要內(nèi)容:題目的布局和紙質(zhì)考試系統(tǒng)一樣,但為了消除作弊現(xiàn)象,題目必須是隨機的,這將需要數(shù)據(jù)庫中有一個龐大的試題庫,英語考試題中的聽力是一復(fù)雜環(huán)節(jié)需要特殊處理,確??碱}不重復(fù),題量一致等等。(2)試卷批改業(yè)務(wù)試卷批改

16、是衡量考生水平的一個至關(guān)重要的部分。為了有別于紙質(zhì)考試的完全人力批改試卷的龐大工作量體現(xiàn)在線考試的優(yōu)勢,試卷批改必須實現(xiàn)計算機的自動批改試卷并進行統(tǒng)分的過程,對于試題的客觀題部分,利用計算機自動統(tǒng)分,主觀題因答案的多樣性還有教師批改,大大減少人力物力,使用計算機的優(yōu)勢計算進行計算機統(tǒng)分,減少人腦統(tǒng)分出現(xiàn)的過失。(3)用戶管理業(yè)務(wù)任何一個系統(tǒng)的價值都體現(xiàn)在存在用戶的使用,那么用戶的管理是極其重要的。其業(yè)務(wù)內(nèi)容:用戶存在不同的角色操作,不同角色的操作界面必須不同。管理員實現(xiàn)系統(tǒng)的統(tǒng)一管理,管理其他權(quán)限低的用戶能對其實現(xiàn)增減等操作,審核其它用戶的操作等。考生角色等實現(xiàn)考試報名和在線考試,查分等操作。

17、3.6 系統(tǒng)數(shù)據(jù)流分析管理員教師考生批改學(xué)生試卷試卷用戶管理成績查詢考題維護考題審核在線考試個人信息維護考生信息修改試卷的指令考卷信息試卷信息考生信息成績信息成績信息成績信息在線報名考生信息試卷信息用戶信息用戶信息用戶信息用戶管理的請求變更的用戶試卷的維護請求審核的請求考題信息添加的考題成績信息試卷信息隨機考題圖 3-1 系統(tǒng)數(shù)據(jù)流圖試卷提交生成試卷在線考試客觀題評定考題信息試卷信息試卷信息試卷信息試卷信息試卷信息學(xué)生信息圖 3-2 第 2 層在線考試數(shù)據(jù)流圖信息提交讀出試卷評定主觀題客觀題評定考題信息試卷信息試卷信息試卷信息試卷信息試卷信息批改的請求圖 3-3 第 2 層修改學(xué)生試卷數(shù)據(jù)流圖

18、查看用戶信息添加用戶信息更改用戶信息用戶信息用戶信息用戶信息用戶信息用戶信息用戶信息用戶信息圖 3-4 第 2 層用戶管理數(shù)據(jù)流圖3.7 性能需求(1) 數(shù)據(jù)精確度試題的題目描述統(tǒng)一采用數(shù)據(jù)庫 Text 類型,不會出現(xiàn)字符數(shù)過多而溢出現(xiàn)象。(2) 時間特性該考試系統(tǒng)軟件嚴格記錄考試時間,考試過程要求順暢,不發(fā)生滯留情況。達到考試規(guī)定時間實現(xiàn)試卷提交。系統(tǒng)從啟動到進入系統(tǒng)登錄界面的時間正常情況下應(yīng)少于 5秒,錄入并更新數(shù)據(jù)的時間正常情況下少于 2 秒。(3) 適用性該管理系統(tǒng)軟件適用于 Windows 2000/xp 及以上操作系統(tǒng)。3.8 運行需求(1)用戶界面本系統(tǒng)采用 Java+Flex

19、設(shè)計,用戶交互界面采用的是基于 Windows 的窗口的 Adobe flash 界面。(2)硬件接口運行本系統(tǒng)的硬件基本要求如下:CPU:Intel P3 及以上;內(nèi)存:256MB 及以上;硬盤:10GB 及以上。(3)軟件接口JVM(Java 虛擬機) ,F(xiàn)LEX 框架。Adobe flash9 及以上版本數(shù)據(jù)庫服務(wù)器:MySQL。第四章第四章 系統(tǒng)設(shè)計系統(tǒng)設(shè)計4.1 系統(tǒng)功能結(jié)構(gòu)圖系統(tǒng)總體結(jié)構(gòu)如圖所示:CET4 在線考試模擬系統(tǒng)考試報名模塊系統(tǒng)登錄模塊分數(shù)查詢模塊考生登錄教師登錄管理員登錄查詢成績信息考試報名在線考試公告通知批改試卷增加試題個人信息維護考題審核生成聽力考生信息管理教師信息

20、管理個人信息維護隨機抽題客觀題評分總分統(tǒng)計分配任務(wù)修改教師刪除教師圖 4-1 CET4 在線考試模擬系統(tǒng)功能結(jié)構(gòu)圖4.2 系統(tǒng)功能設(shè)計本系統(tǒng)共包括三大模塊,分別是考試報名模塊,系統(tǒng)登錄模塊,分數(shù)查詢模塊。系統(tǒng)登錄有分為三個小模塊分別為:考生登錄,教師登錄,管理員登錄。每個模塊的功能如下:1,考試報名模塊功能:實現(xiàn)考生的信息錄入;報名成功生成準考證號。2,系統(tǒng)登錄模塊考生登錄:查看考試注意事項,系統(tǒng)隨機生成試題,考試時間統(tǒng)計,在線進行考試,試卷提交,系統(tǒng)自動評定客觀題答卷,系統(tǒng)將客觀題分數(shù)存入數(shù)據(jù)庫。教師登錄:(1) 查看系統(tǒng)公告通知,包括:修改試卷通知,試題審核情況。(2) 修改試卷,一覽考生

21、主觀題,生成相應(yīng)參考答案,提交評分系統(tǒng)將自動進行總分統(tǒng)計。(3) 添加試題,實現(xiàn)考題的添加(4) 個人信息維護,查看個人信息,修改信息密碼。 管理員登錄:(1) 考題審核,對新增考題進行審核。(2) 生成聽力,為各考點隨機生成聽力題,并進行保存,便于錄入聽音發(fā)放磁帶。(3) 教師信息維護,添加,刪除,修改教師信息。(4) 考試信息維護,刪除,修改考生信息。(5) 個人信息維護,查看個人信息,修改信息密碼。4.3 系統(tǒng)流程圖設(shè)計開始輸入個人信息用戶是否存在生成準考證號保存信息結(jié)束NY圖 4-2 考試報名流程圖開始判斷信息查看考試主要事項進入考試隨機生成試題時間到提交試卷客觀題評定保存信息結(jié)束輸入

22、登錄信息開始考試YNNYYNN圖 4-3 考生考試流程圖查看公告判斷信息批改試卷添加試卷修改密碼開始輸入登錄信息公告信息提取考生答卷主觀題評定保存信息添加試題繼續(xù)添加結(jié)束錄入新信息YYYYYYNN圖 4-4 教師管理流程圖試卷審核判斷信息考生管理教師管理個人信息管理開始輸入登錄信息審核操作提取考生信息考生信息操作保存信息提取教師信息結(jié)束錄入新信息YYY教師信息操作生成聽力聽力試題YYYN圖 4-5 管理員管理流程圖開始輸入準考證信息判斷信息成績一覽結(jié)束YN圖 4-6 查詢成績流程圖4.4 系統(tǒng)數(shù)據(jù)庫設(shè)計4.4.1 數(shù)據(jù)庫 ER 圖CET4 在線考試系統(tǒng)數(shù)據(jù)庫的 ER 圖如下所示:圖 4-7 數(shù)

23、據(jù)庫 ER 圖4.4.2 數(shù)據(jù)庫表設(shè)計本系統(tǒng)采用的數(shù)據(jù)庫工具 MySQL 對數(shù)據(jù)庫進行設(shè)計,其基本表的設(shè)計如下:(1) 管理員表(administrator)表 4-1 管理員信息數(shù)據(jù)表中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束用戶編號idint10PNOT NULL用戶名userNamevarchar50NOT NULL密碼passwordvarchar50NOT NULL角色編號roleIdint10FNOT NULL(2) 考生表(student)表 4-2 考生信息數(shù)據(jù)表中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束考生編號idint10PNOT NULL姓名userN

24、amevarchar50NOT NULL密碼passwordvarchar50NOT NULL考試次數(shù)testNumint10NOT NULL準考證號碼zhukaoIdvarchar20NOT NULL身份證號碼IdenIdvarchar25NOT NULL考試開始時間testStartTimevarchar15NULL學(xué)校編號schoolIdint15NOT NULL角色編號roleIdint10NOT NULL(3) 角色表(role)表 4-3 角色數(shù)據(jù)信息表中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束角色編號roleIdint10P/FNOT NULL角色名roleNameva

25、rchar30NOT NULL(4) 主觀答題表(noselanswer)表 4-4 主觀答題數(shù)據(jù)信息表中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束主觀答題編號idint10PNOT NULL考生編號StuIDint10FNOT NULL考生答案writertext5000 NULL參考答案CKwritertext5000NULL(5)問題表 1(question)表 4-5 問題表 1 信息數(shù)據(jù)表中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束問題編號idint10PNOT NULL問題questiontext1000 NULL選項 AAvarchar200 NULL選項 BBv

26、archar200NULL選項 C Cvarchar200NULL選項 DDvarchar200NULL題目描述編號questionRootIDint10FNOT NULL題目分數(shù)scoreint4NULL問題答案Answertext1000NOTNULL問題類型編號questionTypeIdint10FNOT NULL(6)問題表 2(question2)表 4-6 問題表 2 信息數(shù)據(jù)表中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束問題編號idint10PNOT NULL問題questiontext1000 NULL答案 1ans1text100 NULL答案 2Ans2text1

27、00 NULL答案 3Ans3text100 NULL答案 4Ans4text100 NULL答案 5Ans5text100 NULL答案 6Ans6text100 NULL答案 7Ans7text100 NULL答案 8Ans8text100 NULL答案 9Ans9text100 NULL答案 10ans10text100 NULL答案 11ans11text100 NULL答案 12ans12text100 NULL答案 13ans13text100 NULL答案 14ans14text100 NULL答案 15ans15text100 NULL答案 16ans16text100 NUL

28、L答案 17ans17text100 NULL答案 18ans18text100 NULL答案 19ans19text100 NULL答案 20Ans20text100 NULL題目描述編號questionRootIDint10FNOT NULL題目分數(shù)scoreint4NULL問題類型編號questionTypeIdint10FNOT NULL(7) 題目描述表(questionRoot)表 4-7 題目描述信息數(shù)據(jù)表中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束題目描述編號idint10PNOT NULL題目描述questionRootlongtext5000NULL題型編號type

29、IdInt10FNOT NULL狀態(tài)編號stateIdInt10FNOT NULL增加者編號addPeopleIdint10FNOT NULL(8) 問題類型表(questionType)表 4-8 問題類型數(shù)據(jù)信息表中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束問題類型編號idint10P/FNOT NULL問題類型questionTypevarchar20NOT NULL(9) 學(xué)校表(school)表 4-9 學(xué)校信息數(shù)據(jù)表中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束學(xué)校編號schoolidint15P/FNOT NULL學(xué)校名schoolNamevarchar50NOT

30、NULL聽力題listenTesttext5000NULL問題listenQuestext1000NULL答案listenAnstext1000NULL(10)分數(shù)表(question)表 4-10 分數(shù)信息數(shù)據(jù)表中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束分數(shù)編號idint10PNOT NULL考生編號StuIdint10F NOTNULL客觀題分數(shù)ObjectiveQuestionScoreint10 NULL主觀題分數(shù)SubjectiveQuestionScoreint10NULL總分TotalScoreint10NULL可查分標識FindScoreFlagvarchar4NOT

31、NULL(11) 審核狀態(tài)表(state)表 4-11 審核狀態(tài)數(shù)據(jù)信息表中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束狀態(tài)編號idint10P/FNOT NULL狀態(tài)名stateNamevarchar30NOT NULL(12) 題型表(type)表 4-12 題型數(shù)據(jù)信息表中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束題型編號idint10P/FNOT NULL題型typevarchar50NOT NULL(13) 題目知識點表(knowledgetip)表 4-13 知識點數(shù)據(jù)信息表中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束知識點編號idint10P/FNOT NU

32、LL知識點knowledgeTipvarchar50NOT NULL第五章第五章 系統(tǒng)實現(xiàn)系統(tǒng)實現(xiàn)在完成實現(xiàn)系統(tǒng)的架構(gòu)方面,本系統(tǒng)采用 hibernate 框架進行數(shù)據(jù)的持久化處理,然后在 bo 層調(diào)用 Dao 層的數(shù)據(jù)處理,新建 Server 類直接作為 bo 層的業(yè)務(wù)處理,并將接口暴露給前臺,在 remoting-config.xml 中進行配置將數(shù)據(jù)服務(wù)傳至 Flex 進行數(shù)據(jù)調(diào)用。實現(xiàn)本系統(tǒng)。本系統(tǒng)的具體實現(xiàn)效果如下。5.1 系統(tǒng)登錄首頁本頁面是進入本系統(tǒng)的入口,它設(shè)置了三個鏈接:考試報名、系統(tǒng)登錄和分數(shù)查詢,分別作為進入系統(tǒng)的三個模塊的入口,其窗體如圖 5-1 所示:圖 5-1 系統(tǒng)

33、登錄首頁5.2 考試報名模塊單擊首頁的考試報名鏈接可進入考試報名頁面,此頁面用于輸入個人詳細信息進行注冊報名,并且實現(xiàn)了返回首頁的鏈接。其窗體頁面如圖 5-2 所示:圖 5-2 系統(tǒng)報名登錄登錄輸入報名注冊信息,系統(tǒng)將會處理驗證輸入信息,如:帶*號的為必輸內(nèi)容,兩次輸入密碼必須一致,根據(jù)身份證號碼判斷是否重復(fù)報名等,輸入信息驗證成功后將會提示報名成功,并且根據(jù)所屬考點學(xué)校代號生成唯一的準考證號碼。報名成功窗體頁面如圖 5-3 所示:圖 5-3 系統(tǒng)報名成功頁面5.3 系統(tǒng)登錄模塊 本模塊的主要功能是對用戶身份進行驗證只有系統(tǒng)的合法用戶才能進入系統(tǒng)。登錄頁面如圖 5-4 所示:圖 5-4 系統(tǒng)登

34、錄頁面在系統(tǒng)登錄頁面中存在供用戶選擇角色的下拉框,不同的角色進入的操作頁面不同。在進行系統(tǒng)登錄過程中。若角色為考生則調(diào)用考生表,若角色為教師和管理員則調(diào)用管理員表,分別對賬號和密碼進行驗證,只有輸入了正確的賬號和密碼后,系統(tǒng)登錄才會成功。在考生登錄時登錄成功則考試次數(shù)加一,之后將不允許考生重復(fù)登錄。在輸入了錯誤的或者是不存在的賬戶和密碼時,系統(tǒng)會給出出錯信息提示,指明登錄過程中的錯誤輸入或者錯誤操作,以便用戶進行正確的登錄。對于選擇考生角色登錄系統(tǒng)時,若登錄成功將顯示考試主要事項??忌喿x考試事項完成后將進入在線考試,系統(tǒng)隨機生成試卷,考試界面分為主觀題答題卡和客觀題答題卡兩個 tab 視圖。

35、考生登錄后的顯示頁面圖 5-5 和圖 5-6 所示:圖 5-5 系統(tǒng)在線考試和客觀答題頁面主觀題答題卡部分視圖如下:圖 5-6 主觀答題視圖頁面考試時間結(jié)束或者單擊交卷按鈕將會提示考試完成,退出考場,頁面關(guān)閉。當(dāng)選擇教師角色登錄時。會進入教師管理界面。進入教師界面起始看到的頁面為公告通知,顯示公告信息,并且在頁面上有四個啟動鏈接按鈕,分別進入教師的各個職能模塊。其窗體頁面如圖 5-7 所示:圖 5-7 教師管理界面公告通知畫面教師單擊批改試卷進入批改試卷界面進行試卷批改,界面每一頁顯示一位考生答卷,單擊下一頁系統(tǒng)將對此頁教師評分統(tǒng)計并調(diào)用客觀題分數(shù)進行總分統(tǒng)計。試卷批改窗體頁面如下:圖 5-8

36、 批改試卷畫面單擊添加試題,可以進入添加試題界面,教師可以向系統(tǒng)中添加試題,添加試題界面如圖 5-9 所示:圖 5-9 添加試卷畫面單擊修改密碼驅(qū)動鏈接進入密碼修改,可修改登錄密碼,保證用戶的安全性。其界面如下:圖 5-10 修改密碼畫面當(dāng)選擇管理員角色進入時,能夠進入管理員功能畫面,管理員的的權(quán)限有為教師添加的考題進行審核審核,管理員頁面進入初始就能看到考題審核通知,同時管理員主畫面存在管理員的功能進入畫面驅(qū)動,分別為考題審核、生成聽力試題、考生信息管理、教師信息管理和個人信息維護。管理員畫面主畫面如下圖 5-11 所示:圖 5-11 管理員考題審核畫面考試審核下的三個按鈕分別實現(xiàn)對選中的考

37、題審核的三個狀態(tài)操作。因聽力試題的特殊性,聽力試題需要配套特定的聽力磁帶,所以本系統(tǒng)將聽力試題根據(jù)各個考點學(xué)校隨機生成。當(dāng)單擊生成聽力試題鏈接時進入生成聽力試題頁面。管理員可以為各個考點學(xué)校隨機生成相應(yīng)的聽力試題。其界面如下圖 5-12 所示:圖 5-12 管理員生成聽力試題畫面管理員還可以一覽考生的考試信息并且能夠管理考生的信息對考試信息進行修改,刪除等操作,點擊考生信息管理鏈接,可顯示此頁面,其設(shè)計頁面如下圖 5-13 所示:圖 5-13 考生信息管理畫面管理員作為最高的管理權(quán)限者,同樣可以對教師信息進行增刪改操作。單擊教師信息管理可以進入教師管理界面,單擊添加按鈕會彈出相應(yīng)的添加面板。其

38、操作頁面如下圖所示:圖 5-14 教師信息管理畫面管理員還可以對自己的信息進行維護,其維護操作頁面和教師密碼修改頁面鏈接的是同一個 VIEW 畫面。5.4 分數(shù)查詢模塊單擊首頁分數(shù)查詢接口,進入分數(shù)查詢登錄界面。此頁面需要輸入要查詢考生的準考證號碼。系統(tǒng)自動調(diào)用數(shù)據(jù)庫中考生的信息清單進行匹配驗證。查找符合條件考試的考試成績。其頁面如下圖 5-15 所示:圖 5-15 分數(shù)查詢登錄頁面單擊查詢按鈕,如果驗證輸入的準考證號碼正確的話將會顯示對應(yīng)考試的考試成績。查詢成功頁面如下圖所示:圖 5-16 分數(shù)查詢成功頁面結(jié)結(jié) 論論本系統(tǒng)模擬實現(xiàn)了在線考試系統(tǒng)的一般流程,從考試報名到在線考試最后到在線查分一

39、整套過程分別實現(xiàn)于本系統(tǒng)的考試報名模塊、系統(tǒng)登錄模塊和在線查分模塊。實現(xiàn)試題的隨機生成和自動組卷,完成自動統(tǒng)分和考生與試題的管理。本系統(tǒng)使用 Java 語言完全面向?qū)ο蠡?,運用 Flex 前臺框架更充分地完成和用戶的動態(tài)交互。在本系統(tǒng)的實現(xiàn)完成后還存在很多不完善之處,系統(tǒng)未實現(xiàn)一些技術(shù)難點,例如系統(tǒng)因斷電意外關(guān)閉而導(dǎo)致試卷未保存;系統(tǒng)數(shù)據(jù)庫未實現(xiàn)一些特殊文件的持久化等等。這些都將是今后本系統(tǒng)需要完善之處。本系統(tǒng)先如今只是一個模擬系統(tǒng),僅僅是個開始,只有本系統(tǒng)的充分完善,才能取代現(xiàn)行的紙質(zhì)考試,才能滿足我國遠程教育的需求,促進我國教育網(wǎng)絡(luò)化、遠程化的新的突破。參考文獻參考文獻1 計磊, 李里,

40、周偉編著.精通 J2EE M.人民郵電出版社,2006.082 李芝興, 朱慶生, 曾一. 基于 Java EE 技術(shù)的實驗教學(xué)平臺的開發(fā)與建設(shè)J. 計算機教育 , 2008.023 宋小波. 基于AJAX的無紙化考試系統(tǒng)的設(shè)計與實現(xiàn)J. 科技資訊 , 2007.194 吳堅宇. 基于RIA的管理信息系統(tǒng)開發(fā)技術(shù)及其應(yīng)用J. 電力信息化 , 2009.055 陳正義. 繼往開來的FLEX(TM)高速尋呼編碼規(guī)程J. 電腦與信息技術(shù) , 1996.056 陳顯軍,魏祖寬.基于Flex的XML數(shù)據(jù)通信與應(yīng)用研究J. 計算機與現(xiàn)代化 , 2008.037 張宏, 豐江帆, 閭國年等. 基于RIA技術(shù)

41、的WebGIS研究J. 地球信息科學(xué) , 2007.02 8 張敏杰. 基于Flex技術(shù)的工作流設(shè)計器解決方案J. 電力信息化 , 2009.019 柳剛, 吳德萍. 一種富Internet應(yīng)用程序(RIA)的實現(xiàn)J. 計算機時代 , 2008.1110 羅天抒. 基于Flex的無紙化考試系統(tǒng)的設(shè)計與實現(xiàn)J. 企業(yè)家天地下半月刊(理論版) , 2009.0711 夏先波 Java JDK實例寶典M. 電子工業(yè)出版社2007.01 12 徐鹥. Flex技術(shù)在企業(yè)網(wǎng)站開發(fā)中的應(yīng)用J. 中國教育技術(shù)裝備 , 2009.2113(美)Bruce Eckel .Thinking in Java M.

42、2005.12 14 Cynthia Kane .Manning.Hello.Flex.4J.Nov.2009致致 謝謝 時光匆匆如流水,轉(zhuǎn)眼便是大學(xué)畢業(yè)時節(jié)。離校日期已日趨臨近,畢業(yè)論文的完成也隨之進入了尾聲。從開始進入課題到論文的順利完成,有許許多多的感謝要說。本學(xué)位論文是在束紅老師親切關(guān)懷與細心指導(dǎo)下完成的,她嚴肅的科學(xué)態(tài)度,嚴謹?shù)闹螌W(xué)精神,精益求精的工作作風(fēng),深深地感染和激勵著我。從課題的選擇到論文的最終完成,束老師始終都給予了細心的指導(dǎo)和不懈的支持,并且在耐心指導(dǎo)論文之余,束老師仍不忘拓展我們的專業(yè)知識視野,使我受益匪淺。在此,向尊敬的導(dǎo)師致以深深的謝意和衷心的祝福!同時,我要感謝學(xué)

43、院給我們授課的各位老師,他們傳授給我的專業(yè)知識是我不斷成長的源泉,也是完成本論文的基礎(chǔ),同時給我們傳授了很多為人處事的寶貴經(jīng)驗。也感謝系里的領(lǐng)導(dǎo)在思想、生活上給我以無微不至的關(guān)懷,感謝系里的全體老師對我的教育與培養(yǎng),他們無私的知識傳授,拓展了我的知識視野。在此我要向他們表示感謝和崇高的敬意。更要感謝我的母校銅陵學(xué)院,是他提供了大學(xué)四年良好的學(xué)習(xí)環(huán)境和生活環(huán)境,讓我的大學(xué)生活豐富多姿,成為我人生旅途中難忘的回憶,為我的人生留下精彩的一筆。 簽名: 2011 年 06 月附附 錄錄查找角色:public List findAllRole()RoleDAO roleDao=new RoleDAO()

44、;List roleList=new ArrayList();List list=roleDao.findAll();for(Iterator it=list.iterator();it.hasNext();)Map map=new HashMap();Role role=(Role) it.next();map.put(id,role.getRoleId();map.put(roleName, role.getRoleName();roleList.add(map);return roleList;登錄實現(xiàn)主要代碼:public List findStuByUserNameAndPasswo

45、rd(Object userName,Object passWord)return findByTwoProperty(USER_NAME, userName,PASS_WORD, passWord);SuppressWarnings(unchecked)public List findByTwoProperty(String propertyNameOne, Object valueOne,String propertyNameTwo, Object valueTwo) log.debug(finding Student instance with property: + propertyN

46、ameOne+ , value: + valueOne + ,with property: + propertyNameTwo +, value: + valueTwo);try String queryString = from Student as model where model.+ propertyNameOne + = ? + and model. + propertyNameTwo+ = ?;Query queryObject = getSession().createQuery(queryString);queryObject.setParameter(0, valueOne)

47、;queryObject.setParameter(1, valueTwo);return queryObject.list(); catch (RuntimeException re) log.error(find by property name failed, re);throw re;public class LoginService SuppressWarnings(unchecked)public List findStuByUserNameAndPassword(String userName,String PassWord)List listStudent=new ArrayL

48、ist();StudentDAO studentDao=new StudentDAO();List list=studentDao.findStuByUserNameAndPassword(userName, PassWord);if(list!=null)for(Iterator it=list.iterator();it.hasNext();)Map map=new HashMap();Student student=(Student) it.next();map.put(userName, student.getUserName();map.put(password, student.g

49、etPassWord();map.put(testNum, student.getTestNum();map.put(schoolId, student.getSchool().getSchoolId();map.put(schoolName, student.getSchool().getSchoolName();listStudent.add(map);return listStudent;SuppressWarnings(unchecked)public List findAdminByUserNameAndPassword(String userName,String passWord

50、)List listAdmin=new ArrayList();AdministratorDAO adminDao=new AdministratorDAO();List list=adminDao.findAdminByUserNameAndPassword(userName, passWord);for(Iterator it=list.iterator();it.hasNext();)Map map=new HashMap();Administrator admin=(Administrator) it.next();map.put(roleId,admin.getRole().getR

51、oleId();listAdmin.add(map);return listAdmin;報名主要代碼:public String findMaxZhunKaoIdBySchool(School school) String maxZhunKaoId; log.debug(finding MaxZhunKaoID with property SchoolId:+school.getSchoolId(); try String queryString=select MAX(zhukaoId) from Student as model where model.school.id = +school

52、.getSchoolId(); if(getSession().createQuery(queryString).uniqueResult()=null) maxZhunKaoId=school.getSchoolId().toString()+00000; else maxZhunKaoId = getSession().createQuery(queryString).uniqueResult().toString(); return maxZhunKaoId; catch(RuntimeException re) log.error(find by property name faile

53、d, re);throw re; public class SignUpService StudentDAO studentDao=new StudentDAO();public String singUp(Map map)String ZhunKaoId=;Student student=new Student(); School school=new School();school.setSchoolId(Integer) map.get(schoolId);student.setSchool(school);Role role=new Role();role.setRoleId(3);s

54、tudent.setRole(role);student.setUserName(map.get(userName).toString();student.setPassWord(map.get(password).toString();student.setTestNum(0);String MaxZhunKaoId=studentDao.findMaxZhunKaoIdBySchool(school);Long ZhunKaoIdNum=Long.valueOf(MaxZhunKaoId)+1;ZhunKaoId=ZhunKaoIdNum.toString();student.setZhu

55、kaoId(ZhunKaoId);student.setIdenId(map.get(idenId).toString();studentDao.save(student);return ZhunKaoId;public boolean findStudentByIdenId(String idenId)Boolean flag=false;List list=studentDao.findByIdenId(idenId);if(list.size()0)flag=true;return flag;查分主要代碼實現(xiàn):SuppressWarnings(unchecked)public List

56、findScore(String zhunKaoId)SuppressWarnings(unused)Score score = new Score();List scoreList = new ArrayList();StudentDAO studentDao = new StudentDAO();List studentList = studentDao.findByZhukaoId(zhunKaoId);for(Iterator it=studentList.iterator();it.hasNext();)Student student = (Student) it.next();Ma

57、p map = new HashMap();map.put(stuName, student.getUserName();map.put(school, student.getSchool().getSchoolName();map.put(zhunKaoId, student.getZhukaoId();map.put(idenId, student.getIdenId();map.put(testTime, student.getTestStartTime();map.put(score,student.getScores().getTotalScore();scoreList.add(m

58、ap);return scoreList;隨機生成試卷代碼:public List randFindByProperty(Type type,int value2,State state) log.debug(finding Questionroot instance with property.typeId: + type.getId()+and property.stateId:+ state.getId()+ order by rand() limit: + value2);try String queryString = from Questionroot as model where

59、 model.type.id+ = +type.getId() + and model.state.id = + state.getId() +order by rand();Query queryObject = getSession().createQuery(queryString).setMaxResults(value2);return queryObject.list(); catch (RuntimeException re) log.error(find by property name failed, re);throw re;public List findQuestion

60、ByQuestionRootId(Questionroot questionroot,State state)log.debug(finding Question instance with property.questionrootId: + questionroot.getId()+ and state=1);try String queryString = from Question as model where model.questionroot.id+ = +questionroot.getId() +and model.state.id = +state.getId();Quer

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論