




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、河南機電高等專科學校畢業論文畢業設計論文論文題目:基于b/s模式的java在線考試系統的設計與實現目錄1 緒論i1.1 課題研究背景31.2 國內外發展現狀42 需求分析62.1問題分析62.2任務概述62.3功能需求概述62.4項目目的72.5方案選擇72.6運行環境93 系統的總體設計103.1 指導思想103.1.1 b/s結構開發思想103.1.2面向對象機制的設計思想103.1.3代碼分層思想113.2功能需求分析113.3系統總體設計113.3.1系統管理模塊133.3.2 試題模塊設計143.3.2教師管理模塊143.3.3在線考試模塊153.4數據庫的設計173.4.1 數據庫
2、介紹173.4.2 數據詞典分析174 系統的功能實現194.1系統流程的實現194.2系統模塊功能的實現方法194.2.1數據庫連接頁面194.2.2系統登錄頁面204.2.3題庫管理頁面224.2.4待考頁面234.2.5考試頁面244.2.6在線評分頁面264.2.7后臺管理頁面274.2.8學生賬號管理頁面28結束語29致謝30參考文獻3131摘要 在線考試系統旨在實現考試的無紙化管理,對一些科目的考試可以通過互聯網絡或局域網進行,方便校方考務的管理,也方便了考生,尤其適合考生分布廣,不易集中的遠程教育。本論文主要開發系統的后臺管理系統java在線考試管理子系統,它包括試題管理、考生管
3、理、在線制作試卷、控制學生考試的設置、試卷審批等功能。本論文主要介紹了對java在線考試管理子系統的分析、設計和開發的全部過程。運用er圖,程序流程圖等對在線管理子系統的設計過程進行詳細的說明。全文共分為緒論、需求分析、系統的總體設計、系統的功能實現四部分。以就業為導向,以能力培養為主線,運用現代網絡技術構建新型高級技能型人才培養平臺,實現課程在線考試的公平性和安全性。基于web技術的網絡考試系統可以借助于遍布全球的因特網進行,因此考試既可以在本地進行,也可以在異地進行,大大拓展了考試的靈活性。目前許多國際著名的計算機公司所舉辦的各種認證考試絕大部分采用這種方式,基于web的考試系統設計是現階
4、段網絡課程研究開發的一個熱點。本論文以“基于web技術的java程序設計課程考試系統”網站建設為背景,展開在線網絡考試系統的討論,實現對各種傳統考試的改革。關鍵詞:jsp,java,mysql數據庫,b/s模式abstracton-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 examinations of categories
5、, 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 management's on-line examination management sub- s
6、ystem 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- system and all p
7、rocesses of the development to java's 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 development projec
8、t, need to solve, conclusion four part.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 to safety. therefore, will select the network test method will be later t
9、ake a test the development tendency? may draw support based on the web technology network test system in proliferates global the internet to carry on, therefore takes a test already may in local carry on, also may in different carry on, has developed the test flexibility greatly. for example the pre
10、sent many international famous computers companies conduct each kind of authentication test major part selects this method. based on the web test system design is a present stage research development hot spot the present paper take "based on the web technology network test system" the webs
11、ite construction as a background, launches the on-line network technology test system the discussion, realizes to each traditional test reform.keywords:jsp, java,databases of the mysql, mode of b/s1 緒論近幾年來,隨著internet的崛起,遠程教育開始發展,普及網絡教育的呼聲日益高漲,其勢頭不亞于電子商務。聯合國教科文組織1998年在其一項調查報告中指出:無論是發達國家還是發展中國家,都不同程度存
12、在教育滯后于現實需要的問題,特別是第三世界國家。而普及遠程教育,尤其是網絡教育,不僅是解決這一問題的有效途徑,而且將成為革新傳統教育模式的重要動力。中國的網絡教育也隨internet的發展而同步增長,同時,網絡教育也為中國的教育事業開辟了新的天地。1.1 課題研究背景隨著網絡技術的飛速發展,現在很多國外的大學和社會其他部門都已經開設了遠程教育,通過計算機網絡實現異地教育和培訓。但是,遠程教育軟件的開發目前還處于起步階段,隨著這項技術的不斷深入發展,就要求有更好、更完善的軟件系統應用到遠程教育當中去,這就給軟件設計人員提出了更高的設計要求。遠程教育包括很多環節,例如教學系統、答疑系統和考試系統等
13、等。(1)其中很重要的一個環節就是在線考試系統,同時它也是最難實現的環節。在我國,雖然遠程教育已經蓬勃地發展起來,但是目前學校與社會上的各種考試大都采用傳統的考試方式,在此方式下,組織一次考試至少要經過五個步驟,即人工出題、考生考試、人工閱卷、成績評估和試卷分析。(2)顯然,隨著考試類型的不斷增加及考試要求的不斷提高,教師的工作量將會越來越大,并且其工作將是一件十分煩瑣和非常容易出錯的事情,可以說傳統的考試方式已經不能適應現代考試的需要。隨著計算機應用的迅猛發展,網絡應用不斷擴大,如遠程教育和虛擬大學的出現等等,且這些應用正逐步深入到千家萬戶。人們迫切要求利用這些技術來進行在線考試,以減輕教師
14、的工作負擔及提高工作效率,與此同時也提高了考試的質量,從而使考試更趨于公證、客觀,更加激發學生的學習興趣。(3)例如目前許多國際著名的計算機公司所舉辦的各種認證考試絕大部分采用這種方式。伴隨著遠程教育的蓬勃發展,作為教學當中不可分割的一部分的在線考試系統也得到了當今遠程教育研究者的關注,考試是考察學生對所學習知識的接受和理解程度的重要手段,無紙化的考卷,考試的隨時性,隨地性,這些特點都是研究并開發網絡考試系統主要的原因,網絡考試系統遠遠超越了傳統考試固定時間,固定地點的考試模式的限制,將給學生和老師帶來極大的便利。隨著internet的相關技術的發展,特別是web技術的出現,人們開始致力于研究
15、和開發基于internet考試系統,這也大大推動了遠程教育的發展。如今世界上對于基于internet的遠程考試系統所進行的研究開發工作不是很長,但是基于web技術構建的在線考試系統已然成為發展的主流。數據庫安全、共享、數據傳輸過程的安全性、訪問控制技術、身份識別技術都是構建考試系統要考慮的問題。 (4)目前,一些遠程教育機構已經開發出了在線考試系統,基本實現了基于internet的b/s結構在線考試。通過server端的后臺試題庫動態生成考卷和對于標準化的試題即時評定成績。但是與傳統的紙面考試相比,目前的在線測試都是基于標準化考試的,而且一般只能用于非正規的考試,因為對于很多方面考慮的還不是很
16、完善,因而使得在線考試在近段時間很難完全替代傳統的考試。1.2 國內外發展現狀國際上,基于計算機的考試蓬勃發展,對于題庫建設的理論研究不斷深入,實用考試系統也層出不窮。美國心理協會在1986年出版了關于如何開發、使用計算機化考試以及解釋考分的指南,成為了考試和軟件開發者的事實標準。投入實際使用的例子有,1982年才有遠距離教育方式的美國學院(american college)考試使用計算機進行測試;1993年美國教育考試中心(eraduade record examination簡稱 ets)考試;從1994年開始,美國護理證書考試完全在計算機上進行。目前,國外許多大型測驗出版機構、地區教育主
17、管部門和專業資格認證機構都以某種測量理論為指導建立題庫、設計考試系統,并進行各項相關研究。除了這類行業專用的大型考試系統之外,供普通教師使用的通用考試系統軟件也有相應的研究和產品。如英國question mark computing,ltd公司出品的question mark,就是一種基于項目反應理論的,可供廣大教師使用的通用的考試系統。在我國,計算機考試系統和題庫的理論研究和實踐應用起步比較晚。但發展也比較迅速,研究和開發活動比較活躍。北京師范大學、華北師范大學等高等院校都有教師在進行教育測量理論應用于題庫建設方面的研究。清華大學、上海交通大學、北京師范大學等高校,也有教師在組織力量致力于實
18、用考試系統的研究和開發工作。(1)我國的專用考試系統主要針對計算機考試,其他行業和科目的考試系統太少。(2)計算機在線考試系統由于操作類題目自動出題有較大的難度,基本沒有實現題庫化的管理。(3)系統對傳統的客觀題雖然一般建有題庫但不大,多采用隨機抽題組卷的方式,缺乏教育測量理論作為依據。(4)考試完成后,分數和試題統計分析比較簡單,沒有充分挖掘數據所包含的信息。(5)通過考試系統或題庫系統對最終用戶即教師的需求分析做的不夠透徹,忽略老師們渴望能自由地操縱試題庫的需求,沒有完全實現用戶自主初始化試題庫、自主維護試題庫、自主調用試題庫的功能。加上軟件實用水平和商品化工作方面的不足。通用系統并沒有被
19、廣大教師認可和使用。2 需求分析2.1問題分析傳統的學校教學中,進行一場考試,要求老師刻試卷、印試卷、安排考試、監考、收集試卷、評改試卷、講評試卷和分析試卷,這是一個繁雜的過程,需要大量人力、物力與時間的投入,已經越來越不適應學校信息化建設與現代教學的需要。尤其在遠程網絡教學中,學生分布廣,不易統一集中安排考試,給校方和學生帶來了眾多的不便。而在線考試系統,正是信息化建設的產物,它是傳統考場的延伸。它可以利用互聯網絡和局域網,隨時隨地的對學生進行考試,加上數據庫技術的利用,大大簡化了傳統考試的過程,因此在線考試是電子化教學的不可缺少的輔助手段。在當今信息時代,計算機技術與網絡技術越來越廣地應用
20、于各個領域,改變著人們的學習、工作、生活乃至思維方式,也引起了教育領域的重大變革。將計算機與網絡技術應用于現代高等教育中,是現代高等教育發展的需要,也是改革教育模式,提高學校教學效果和教學效率、提高科研和管理水平的必要手段。2.2任務概述在線考試管理子系統主要實現題庫管理、考生管理、成績查詢、試卷管理等功能,充分利用計算機科學與技術,改變傳統的考試操作方式,實現無紙化考試的模式。2.3功能需求概述系統需要解決的主要問題:主要開發的是后臺管理子系統,在此系統中主要對前臺考試系統的顯示信息進行管理和設置。子系統分為以下功能模塊如圖2-1所示:題庫管理:用于對單個試題的增、刪、查等基本維護,還可對題
21、庫進行數據備份和數據還原。針對不同題型、不同應用范圍及不同科目對試題進行維護。用戶管理:主要是對用戶資料的修改等。成績管理:對每次考試的學生成績的基本信息進行維護,并提供學生成績的統計管理。在線考試管理子系統成績管理題庫管理 用戶管理圖2-1在線考試管理子系統2.4項目目的在線考試系統的總體目標:在線考試系統可以幫助教師完成一個考試從題目設計,考試安排,考試實施,考卷批改到分數統計總結的所有工作。所有的考試數據和其它數據庫需要一種主流的方式進行存儲和管理,例如使用數據庫技術。考試數據的存放和處理必須對考試保密,需要一定的安全性保障。對考試的系統目標:這個軟件是分布式的,這意味著只要有考試客戶端
22、可以連接到考試應用服務器,任何考生在任何地方進行身份確認,都能完成考試。穩定性可以保證每一次考試對每一個考生是公平的,隨機性可以避免作弊的發生。對教師的系統目標:提供一個功能全面的考核管理客戶端,可以進行考試設計和安排。通過管理客戶端,教師可以進行考試的身份管理。考生的考試結果可以被保存下來,供教師進行分析統計和察看。2.5方案選擇開發在線考試系統,提出以下解決方案:選擇mysql作為后臺的數據庫,選擇java,jsp,javascript,html作為應用程序開發工具,運用tomcat服務器技術,整個系統完全基于b/s (browser/server)模式進行設計。web應用程序開發環境js
23、p技術jsp的全稱是java server pages,它是sun推出的一種動態網頁技術標準。它在傳統的靜態頁面文件(*.html,*.htm)中加入java程序片段和jsp標記,就構成了jsp頁面。jsp具有以下的優點:將業務層與表示層分離:使用jsp技術,網絡開發人員可充分使用html來設計頁面顯示部分(如字體顏色等),并使用jsp指令或者java程序片段來生成網頁上的動態內容。能夠跨平臺:jsp支持絕大部分平臺,包括現在非常流行的linux系統,應用非常廣泛的apache服務器也提供了支持jsp的服務。組件的開發和使用很方便:如asp的組件是由c+,vb等語言開發的,并需要注冊才能使用;
24、而jsp的組件是用java開發的,可以直接使用。一次編寫,處處運行:作為java開發平臺的一部分,jsp具有java的所有優點,包括write once , run everywhere。tomcat應用服務器目前支持jsp的應用服務器是較多的,tomcat是其中較為流行的一個web服務器,tomcat是一個免費的開源的serlvet容器,在tomcat中,應用程序的部署很簡單,你只需將你的war放到tomcat的webapp目錄下,tomcat會自動檢測到這個文件,并將其解壓。你在瀏覽器中訪問這個應用的jsp時,通常第一次會很慢,因為tomcat要將jsp轉化為servlet文件,然后編譯.
25、編譯以后,訪問將會很快。mysqlmysql是一個小型關系型數據庫管理系統,開發者為瑞典mysql ab公司。在2008年1月16號被sun公司收購。目前mysql被廣泛地應用在internet上的中小型網站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網站為了降低網站總體擁有成本而選擇了mysql作為網站數據庫。b/s 開發模式伴隨著internet的迅速發展,計算機技術正在由基于c/s(client/ server)模式的應用系統轉變為基于b/s模式的應用系統。b/s模式帶來了巨大的好處:開發成本及維護成本降低.由于b/s架構管理軟件只安裝在服務器端(serv
26、er)上,即應用程序在部署,升級,維護時,只需要在服務器端進行配置就可以了,網絡管理人員只需要管理服務器就行了,用戶界面主要事務邏輯在服務器(server)端完全通過www瀏覽器實現,極少部分事務邏輯在前端(browser)實現,所有的客戶端只有瀏覽器,網絡管理人員只需要做硬件維護。2.6運行環境(1)硬件需求: piii/256m/10g 及以上配置,要求為考試系統分配足夠的數據庫磁盤空間。(2)推薦配置:piv 2g/512m/40g。(3)操作系統需求:windows2000及以上操作系統 。(4)數據庫軟件需求:mysql中文版數據庫。(5)件軟件需求:tomcat系列服務器。3 系統
27、的總體設計3.1 指導思想3.1.1 b/s結構開發思想b/s(browser/server)結構即瀏覽器和服務器結構。它是隨著internet技術的興起,對c/s結構的一種變化或者改進的結構。在這種結構下,用戶工作界面是通過www瀏覽器來實現,極少部分事務邏輯在前端(browser)實現,但是主要事務邏輯在服務器端(server)實現,形成所謂三層(3-tier)結構。一個三層架構的應用程序由三部分組成,這三部分各自分布在網絡中的不同地方。這三個部分分別是:工作站或表示層接口、事務邏輯、數據庫以及與其相關的程序設計。在一個典型的三層架構應用程序中,應用程序的用戶工作站包括提供圖形用戶界面(g
28、ui)的程序設計和具體的應用程序入口表格或交互式窗口。事務邏輯處在局域網(lan)服務器或其他共享主機上,它作為響應工作站所發出客戶請求的服務器,而相對于處于大型機的第三層它是作為客戶端,并且決定需要什么數據以及數據存儲在哪里。第三層包括數據庫以及處理讀寫以及訪問數據庫的程序。然而應用程序的設計可能比這個架構要復雜,對于大型程序來說,這個三層模式是一種比較簡便的考慮方法。這種應用程序的設計使用客戶/服務器模式,各層可以同時開發,并且可以由不同的成員組用不同的語言來開發。因為各個層次的開發不會影響其他層次,所以這種模型對于進一步開發軟件是很方便的。這樣就大大簡化了客戶端電腦載荷,減輕了系統維護與
29、升級的成本和工作量,降低了用戶的總體成本(tco)。以目前的技術看,局域網建立b/s結構的網絡應用,并通過internet/intranet模式下數據庫應用,相對易于把握、成本也是較低的。它是一次性到位的開發,能實現不同的人員,從不同的地點,以不同的接入方式(比如lan, wan, internet/intranet等)訪問和操作共同的數據庫;它能有效地保護數據平臺和管理訪問權限,服務器數據庫也很安全。特別是在java這樣的跨平臺語言出現之后,b/s架構管理軟件更是方便、快捷、高效。3.1.2面向對象機制的設計思想所有計算機均由兩種元素組成:代碼和數據。精確的說,有些程序是圍繞著“什么正在發生
30、”而編寫,有些則是圍繞“誰正在受影響”而編寫的。第一種編程方式叫做“面向過程的模型” ,按這種模型編寫的程序以一系列的線性步驟(代碼)為特征,可被理解為作用于數據的代碼。如c等過程化語言。第二種編程方式叫做“面向對象的模型” ,按這種模型編寫的程序圍繞著程序的數據(對象)和針對該對象而嚴格定義的接口來組織程序,它的特點是數據控制代碼的訪問。通過把控制權轉移到數據上,面向對象的模型在組織方式上有:抽象、封裝、繼承和多態的好處。在系統開發過程中,采用軟件工程的開發管理,在開發的過程中也遵循軟件工程的思想,軟件工程的主要環節有:人員管理、項目管理、可行性與需求分析、系統設計、程序設計、測試、維護等。
31、3.1.3代碼分層思想由于采用b/s設計模式分層思想,同時根據軟件工程的管理思想及系統分析的設計與分析的思想進行系統的開發,利用java語言開發web應用程序,提供string+hibernate+spring框架對系統的程序代碼結構進行分層。3.2功能需求分析該系統主要模塊:教師管理模塊,在線考試模塊,下面就這些模塊在該系統中應有的功能進行以下分析,只有這樣,才能讓用戶對該系統有一個更好的了解。3.3系統總體設計根據需求分析,設計課程考試系統的主要功能模塊有:后臺管理模塊、學生在線考試模塊、教師管理模塊等。系統總體設計功能模塊圖如圖3-1所示:課程考試系統后臺管理學生在線考試教師管理題庫管理
32、學生賬號管理教師賬號管理系統管理在線考試成績查詢學生管理試卷管理成績管理圖3-1 系統功能模塊圖系統結構圖,如圖3-2所示:打開登陸界面圖,用戶登陸,系統根據不同的用戶類型來選擇相應的跳轉頁面。考生界面包括開始考試、資料修改和成績的查詢;管理界面可以對用戶的添加以及修改、試卷的管理、試題的添加與刪除、學生成績的管理等。在線考試系統考 生前 臺后臺管 理理考試管理試卷管理成績管理用戶管理開始考試資料修改成績查詢圖3-2 系統結構圖3.3.1系統管理模塊管理員可以向題庫中添加各種類型且符合要求的試題也可以對它們進行修改和刪除。同時,管理員也能用戶、考試記錄等數據進行管理,在此系統中可以由若干個管理
33、員,即系統管理員,他們具有一般用戶所沒有的權限,即具有管理用戶、試題以及試卷等內容的權力,它不需注冊,在數據庫有一個表來存放相關信息,可由以存在的管理員添加或刪除管理員。一般用戶:主要是指學校的學生和企事業單位的培訓對象等。(1)試題庫管理:對題型試題庫的管理,使試題的增刪、編輯更為簡便。試題錄入每道試題有類型、試題內容與選項和答案等欄目。管理員輸入完以后,即可看到預覽效果。如果輸入不合法,或者該科題庫中已有該試題編號和內容等,則系統添加就不會成功。試題修改管理員還可以對試題進行修改。也可以先對試題進行先刪除后添加,從而達到預期的效果。試題刪除管理員可以刪除不再需要的試題。(2)賬號管理賬號的
34、添加基本信息有id號、姓名、性別、密碼等,對于用戶輸入的不符合系統要求的數據,系統仍舊給出提示或警告。賬號編輯管理員可以修改已存在的賬號信息,如果輸入數據不合法,系統將會給出提示并重新錄入。3.3.2 試題模塊設計鑒于主觀題的主觀性,目前無法實現系統自動判卷,所以本系統作的題型只有客觀題類型:單選題。一般情況下,單選題往往在四個供選的答案a、b、c、d中選擇唯一正確的答案。因而,本系統中所涉及的題型跟過去的大體相同,題型的樣題設計如表3-3所示:表3-3 系統功能模塊表題號1題干java語言的特點選項a:繼承選項b:封裝選項c:多態選項d:以上都是作答:a b c d3.3.2教師管理模塊教師
35、管理作為在線考試系統中的一個重要環節,主要實現對學生用戶的管理,學生成績的查詢和刪除。最重要的是設置考試試卷的綜合參數:試題的類型,試題的數量和試題的分值,最后是考試時間的設置。(1)學生管理在此模塊中教師可以查詢學生的綜合信息。可以直接查詢所有學生的基本信息并且對學生資料的修改等。(2)試卷管理在此模塊中主要是設置學生考試所用試卷的參數信息,首先新增一張試卷并設置如下信息:考試試題的類型、每題的分值、考試時間。試卷信息設定以后,如果不滿意,還可以再重新修改試卷信息。(3)成績管理此模塊所涉及的信息主要是查詢學生的成績,可以直接在管理用戶信息中直接查看。作為教師來講,往往需要對全班學生的每次考
36、試情況做個整體的調查,在此通過本期統計來實現。每次考試過后,教師可以直接從這里查看整體學生的考試情況。3.3.3在線考試模塊進入在線考場是本系統最重要的部分之一。因為一個系統如果涉及到現實的話,就必須考慮得十分周到、完善。考生登錄后,就可以調出試卷進行在線考試。考生的其答題信息通過單、復選按鈕選擇答案來反映。考試結束采取自主交卷和到了規定的時間自動題示有機結合的方式辦法予以實現。系統嚴格控制整個考試過程,實行時間的監控與權限的控制,考生需要在限定的考試時間內交卷。根據需求分析,在線考試模塊流程圖如圖3-4所示:開 始輸入用戶名和密碼是否正確否 是選擇考試科目隨機出題形成試卷答題及交卷判 卷顯示
37、考分結束 束圖3-4 在線考試模塊流程圖當用戶開始進入在線考試系統的時候,首先輸入用戶名和密碼,進行驗證,如果用戶名和密碼正確,這時系統回自動提供給用戶一套試題,從此時起,系統將對用戶進行計時,當時間結束的時候,系統將提示你考試時間已經到了,提醒你交試卷,當你提交后,系統回馬上顯示出你的成績。否則,你將返回考試登錄界面,再次試著輸入正確的用戶名和密碼。如果你還沒法進入,請先與教師聯系,然后再次登錄考試系統。計算機自動閱卷:本系統只考慮客觀題,要求計算機能自動閱卷,然后馬上顯示出考生分數。成績查閱:考生考完以后,教師應該能對所有紀錄進行查詢。除了實現上述功能以外,在線考試系統還應該具有友好、簡潔
38、的界面,安全性要高,穩定性要強,能夠滿足100人以上同時及進行在線考試。3.4數據庫的設計3.4.1 數據庫介紹本系統采用的是 mysql數據庫,根據需求分析所作分析,這里創建了五張表,分別是單選題庫表、學生成績表、學生信息表、教師信息表和試卷信息表。在下面就這五張表做一下分析,并分別列出了其表結構。3.4.2 數據詞典分析無論做一個什么系統,數據庫是必不可少的,它是實現系統的紐帶,為此,這里要把該系統中需要的數據庫中的表做出詳細的分析與設計。因為本系統的設計有單選題類型,所以分別建立了對應的數據庫表questin,此外又建立了用戶對應的表,詳細設計分別如表3-1、表3-2所示: 單選題庫表結
39、構,如表3-1所示:表3-1 question 表字段名稱類型長度說明idchar20試題號,主鍵mchar100題干achar100選項abchar100選項bcchar100選項cdchar100選項danswerchar10答案 用戶庫表結構,如表3-2所示:表3-2 users 表字段名稱類型長度說明idchar10學號,主鍵namechar20姓名passwordchar20密碼emailchar30電子郵箱addresschar50住址scoreint6考試得分timeindate登錄時間timeoutdate退出時間通常,當登錄一個需要注冊的網站的時候,系統是如何知道用戶是否已經
40、注冊過,即使注冊過了,登錄的時候是怎么知道用戶輸入的用戶名和密碼不正確,這時,就需要一個用戶表,有用戶名和密碼,為用戶在考試系統中驗證身份做好準備。4 系統的功能實現在進行了整體設計以后,就開始進行詳細的設計及編碼工作。也就是設計文件和把他們有機地組織在一起實現所有功能。4.1系統流程的實現根據系統總體設計,首先系統要有一個登錄界面,用戶可以從該界面登錄參加考試。管理員和教師也應該有一個進入管理登錄界面的通道。在考生正確輸入用戶名和密碼以后,接著應該進入待考頁面。在該界面中,考生可以查詢以前的考試成績,考試狀態時直接點擊“進入考場” 。這個人機交互的過程是必不可少的。考生點擊進入考場以后,進入
41、開始考試界面,由計算機提取試題,顯示出來組成試卷,并開始進行計時。考生再次進行考試,答完試題后交卷,進入下一個界面。考生提交答卷后,由計算機進行處理-判卷,得出考試分數,顯示出來,并把該生考試記錄存入數據庫。在這個界面上應該可以返回繼續進行考試或回到登錄界面。以上是系統進行考試功能的部分,要對系統進行管理,如試題管理、成績管理、用戶管理等就需要設計一些管理界面。下面就來逐步進行設計。要進行管理首先要有管理員登陸驗證,這個界面與用戶登錄界面表面一樣,但是他們是從不同的表中提取數據進行驗證的,以便于系統擴充和增加安全性。管理員登錄以后,應該有一個管理項目選擇界面,其中包括管理用戶選項、管理題庫選項
42、。管理用戶的界面可以實現用戶的增加的功能,管理員在此可以對用戶進行管理。題庫管理界:點擊選項可以分別進入相應功能的管理,在每個頁面里都可以實現對試題的添加和刪除。最后是系統的安全退出,可以安全的退出后臺管理頁面,返回到考試系統的主頁面。4.2系統模塊功能的實現方法4.2.1數據庫連接頁面該文件實現的是連接并打開數據庫的功能。本系統采用的是mysql數據庫,這里采用的連接方式是jdbc的連接方式。主要代碼實現如下:<% string driver="com.mysql.jdbc.driver"string url="jdbc:mysql:/:
43、3306/user?characterencoding=utf-8"string username="root"string password="123"class.forname(driver);connection connection=drivermanager.getconnection(url,username, password);%> 打開數據庫:變量“url”主要是記錄存放數據庫的相對路徑。connetin的含義是定義了一個變量用來存放數據庫連接所創建的連接對象。4.2.2系統登錄頁面在本系統中登錄頁面的文件是login.
44、jsp文件。這里就注重介紹一下后臺管理的登錄頁面。該文件的功能使這樣實現的:表單提交服務器端的servlet程序對提交信息進行處理,驗證用戶信息正確無誤后將轉向管理頁面。重點程序如下:<%string user=request.getparameter("user");string password=request.getparameter("password");string code=request.getparameter("code");if(user.equals("teacher")&&a
45、mp;password.equals("123")response.addheader("flag", "1");response.setheader("name", user);session.setattribute("login",user);response.sendredirect("manage.jsp");elseuserlogin ulogin=new userlogin();string uname=ulogin.login(user, password);
46、 if(uname!=null&&uname.length()!=0&&code!=null&&code.length()!=0&&code.equals(request.getsession().getattribute("code")response.addheader("flag", "1");response.setheader("name", uname);session.setattribute("login",unam
47、e);response.sendredirect("/shopcart/index.jsp");elseresponse.addheader("flag", "2");response.sendredirect("index.jsp");%>在這里首先接收從表單傳來用戶輸入的用戶名和密碼信息,再定義一條sql語句,該語句的功能是查詢在庫里是否有滿足條件的記錄。然后定義一個rs變量,該變量主要用來記錄執行sql后的結果。如果沒有滿足條件的記錄則rs.next()為空,那么會系統會自動重定向到登錄界面,返回登錄頁
48、面讓用戶重新輸入。如果驗證合法,會自動進入到相應的界面。登陸頁面如圖4-1所示:圖4-1考試首頁登錄圖4.2.3題庫管理頁面實現了對單選題題庫的增加,管理員登錄成功后,可以通過本頁面來增加試題。在本頁面中的相應文本框中輸入合法的內容后,點擊“增加試題”按鈕,則會向服務器端發送請求,成功后,服務器端會把頁面重定向到本頁面,從而可以實現繼續增加試題的目的。點擊“返回”按鈕,則會返回到管理界面的主頁<manage.jsp>增加試題界面如圖4-2所示:圖 4-2 增加試題界面主要功能實現程序:<%string id = request.getparameter("id&qu
49、ot;);string m = request.getparameter("m");string a = request.getparameter("a");string b = request.getparameter("b");string c = request.getparameter("c");string d = request.getparameter("d");string answer = request.getparameter("answer");try
50、 string driver="com.mysql.jdbc.driver"string url="jdbc:mysql:/:3306/user?characterencoding=utf-8"string username="admin"string password="123"class.forname(driver);connectionconnection=drivermanager.getconnection(url, username, password);statement st=c
51、onnection.createstatement();stringsql="insertinto questionvalues("sql+="'"+id+"',"+"'"+m+"',"+"'"+a+"',"+"'"+b+"',"+"'"+c+"',"+"'"+d+&qu
52、ot;',"+"'"+answer+"')" st.executeupdate(sql); catch (exception e) / todo 自動生成 catch 塊e.printstacktrace();response.sendredirect("add.jsp");%>操作成功后,主要是通過服務器端的servlet程序來實現頁面的跳轉功能。4.2.4待考頁面該文件是用戶登錄在線考試系統后的待考頁面,還可以實現成績查詢,選擇“開始考試”后進入考試界面。該頁面和用戶登錄之前的類似,通過特定
53、的標簽庫做處理,在頁面中相應的位置引入標簽庫,如果登錄成功,再重定向到本頁面,則顯示相應的內容,從而達到登錄的功能。實現該功能的主要程序代碼如下:<%httpsession session=request.getsession();string user=request.getparameter("user");string password=request.getparameter("password");string code=request.getparameter("code");if(user.equals("
54、;admin")&&password.equals("123")response.addheader("flag", "1");response.setheader("name", user);session.setattribute("login",user);response.sendredirect("manage.jsp");elseuserlogin ulogin=new userlogin();stringuname=ulogin.log
55、in(user,password); if(uname!=null&&uname.length()!=0&&code!=null&&code.length()!=0&&code.equals(request.getsession().getattribute("code")response.addheader("flag", "1");response.setheader("name", uname);session.setattribute(&quo
56、t;login",uname);response.sendredirect("/shopcart/index.jsp");elseresponse.addheader("flag", "2");response.sendredirect("index.jsp");%>在學生登錄時不同的學生登錄時session變量將會記錄他的用戶名。并將接收到的變量值顯示到頁面中。還利用 javascript腳本,在頁面中顯示日期和時間,這樣可以給用戶提供觀看時間的方便,以便能夠更好的把握時間來進行考試。4.2.5考
57、試頁面該文件實現學生用戶對自己的信息進行管理(修改考生信息、查詢考試得分)的功能,界面如圖5-4所示。該文件實現學生進行在線考試(自動評分)的功能,在學生提交卷子或者考試時間到系統將自動的給客觀題進行評分。界面如圖4-3所示:圖4-3學生考試界面圖該文件就是考試界面,對每個考生的考試時間進行監控,到結束時間后自動給出提示并交卷。教師可以根據不同的科目考試來設定相應的時間。自動交卷頁面如圖4-4所示:圖4-4定時交卷頁面4.2.6在線評分頁面考生提交答卷以后,該文件就把考生的答案同題庫中的正確答案進行比較,最后得出考生的得分。首先先打開數據庫,再讀取從“form”表單提交過來的答案信息,然后根據
58、隨機抽選題時所抽選的每道題的題號,然后在數據庫中對學生所提交的答案進行比較,若與數據庫中對應的題目答案相同則加分,否則本題將不加分,最后統計出總分。在這里主要來看一下是如何實現服務器端自動評分,如何將成績和學號等信息記錄起來的。部分實現代碼如下所示:connection con=drivermanager.getconnection(url, username,password);statement sta = con.createstatement();string sql = "select * from question"set = sta.executequery(sql);int s
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025學年部編版小學二年級語文上冊教學計劃
- 2025年神經內科護理團隊建設計劃
- 部編版四年級語文上冊教學內容調整計劃
- 人教版初中九年級下學期音樂教研組工作計劃
- 咸陽市實驗中學2025屆九年級下學期中考四模數學試卷(含解析)
- 2025年幼兒園后勤工作總結及秋季計劃
- 八年級下冊歷史教學創新計劃
- “青藍工程”校企合作教師指導計劃
- 人教版數學七年級下冊備課組教學反思計劃
- 高值耗材采購制度及流程在醫院應用他
- 2025年河北廊坊市直事業單位招聘工作人員256人筆試歷年典型考題及考點剖析附帶答案詳解
- 2025年醫學綜合素質考試題及答案
- 電大市場營銷試題及答案
- 北師大版(2024)七年級上冊生物期末復習全冊考點背誦提綱
- 《半年護理工作回顧與改進》課件
- 2025秋三年級上冊語文上課課件 3 不懂就要問
- 2025年湖南中考生物試題及答案
- Unit 2 Home Sweet Home 第1課時(Section A 1a-1d) 2025-2026學年人教版英語八年級下冊
- 送達地址確認書(法院最新版)
- 青島一模化學試題
- 常德市自來水公司水表管理制度
評論
0/150
提交評論