操作系統(tǒng)遠程考試系統(tǒng)的設計與實現(xiàn)畢業(yè)論文_第1頁
已閱讀1頁,還剩31頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  本科畢業(yè)論文(設計)</p><p><b>  (2014屆) </b></p><p>  操作系統(tǒng)遠程考試系統(tǒng)設計與實現(xiàn) </p><p>  院 系 計算機科學與技術系 </p><p>  專 業(yè) 計算機軟件 </p><p>  

2、姓 名 </p><p>  指導教師 </p><p>  職 稱 講 師 </p><p>  操作系統(tǒng)遠程考試系統(tǒng)設計與實現(xiàn)</p><p><b>  摘 要</b></p><p>  隨著網絡的

3、發(fā)展,高校也已進入信息化時代,基于網絡的考試系統(tǒng)也是在這種形勢下應運而生。遠程考試系統(tǒng)不僅增加了考試成績的客觀性和公正性,而且極大地提高了學校的工作效率。</p><p>  本次設計與實現(xiàn)的操作系統(tǒng)遠程考試系統(tǒng)是基于JSP技術,采用Java語言,以MyEclipse為開發(fā)工具。本系統(tǒng)分為前臺設計與后臺設計兩部分,前臺設計主要是面對用戶而言,不同權限的用戶可以實現(xiàn)不同的功能。后臺設計主要是對系統(tǒng)內部信息進行管理,

4、其中最重要是數據庫的設計,本系統(tǒng)采用MySQL數據庫,為系統(tǒng)信息的使用及存儲提供技術支持。經過測試,該操作系統(tǒng)遠程考試系統(tǒng)運行穩(wěn)定,操作方便、快捷。</p><p>  關鍵字:JSP MySQL 在線考試 操作系統(tǒng)</p><p><b>  ABSTRACT</b></p><p>  With the development of

5、the network, the university also has entered the information age, network-based test system also came into being in this situation. Remote examination system not only increases the test scores of objectivity and impartia

6、lity, but also greatly improve the efficiency of the school.</p><p>  The design and operation of the system remote test system implementation is based on JSP technology, Java language and MyEclipse. The sys

7、tem is divided into front and back design designed in two parts, the front desk is designed primarily to face the user, different users can achieve different functions. Backstage designed primarily for internal informati

8、on management system, the most important thing is the design of the database, the system uses the MySQL database to provide technical support f</p><p>  Keywords: JSP MySQL Online Examination Operating S

9、ystem目 錄</p><p><b>  第1章 緒論1</b></p><p><b>  1.1開發(fā)背景1</b></p><p>  1.2相關技術的介紹1</p><p>  1.3系統(tǒng)開發(fā)環(huán)境2</p><p>  1.4 論文組織結構.......

10、................................... 2</p><p>  第2章 需求分析與可行性分析2</p><p><b>  2.1需求分析2</b></p><p>  2.2可行性分析3</p><p>  第3章 系統(tǒng)設計4</p><p>  3.

11、1系統(tǒng)概要設計.................4</p><p>  3.2 系統(tǒng)結構設計.......................................... 4</p><p>  3.3系統(tǒng)詳細設計.......................................... .5</p><p>  3.4系統(tǒng)設計目標........

12、...................................6</p><p>  3.5系統(tǒng)設計用例示意圖.....................................7</p><p>  第4章 數據庫設計.8</p><p>  4.1數據庫結構設計8</p><p>  4.2數據庫實體關系圖9<

13、/p><p>  4.3數據庫實體屬性圖10</p><p>  4.4數據庫表結構11</p><p>  第5章 系統(tǒng)實現(xiàn)14</p><p>  5.1界面設計14</p><p>  5.2題庫管理15</p><p>  5.3試卷管理16</p><p&

14、gt;  5.4閱卷管理17</p><p>  5.5考生考試管理17</p><p>  5.6修改密碼18</p><p>  第6章 結束語19</p><p><b>  致 謝20</b></p><p><b>  參考文獻21</b></

15、p><p><b>  附 錄22</b></p><p><b>  第1章 緒論</b></p><p><b>  1.1 開發(fā)背景</b></p><p>  隨著網絡科技的不斷發(fā)展和現(xiàn)代教學改革的進一步推進,將傳統(tǒng)考試模式轉化為利用現(xiàn)代網絡技術進行考試操作和管理的遠

16、程考試系統(tǒng)已成為現(xiàn)代教學改革的一項重要措施,并已成為進行高校教學改革和學分制改革順利實施的關鍵。</p><p>  目前,我們國家的各種考試大多采用傳統(tǒng)的考試方式,在此方式下,每次組織考試都至少需要七個步驟,包括人工出卷、試卷審核、印刷試卷、考生考試、人工閱卷、成績評估和試卷分析,并且在考試過程中還需要大量的監(jiān)考老師進行現(xiàn)場監(jiān)考。顯然,隨著考試類型的不斷增加及考試要求的不斷提高,教師在考試中的工作量也會越來越大

17、,并且該工作也是一件十分煩瑣和非常容易出錯的事情。因此,傳統(tǒng)的考試方式已經不能很好的適應現(xiàn)代考試的需要,遠程考試系統(tǒng)應運而生。</p><p>  1.2相關技術的介紹</p><p>  本次操作系統(tǒng)遠程考試系統(tǒng)采用B/S模式結構,用戶可以通過瀏覽器向分布在網絡上的許多服務器發(fā)出請求,服務器會對瀏覽器的請求進行處理,將用戶所需信息返回到瀏覽器??蛻魴C/服務器結構簡化了會員機的工作,用戶機

18、上只需配置少量的會員端軟件。服務器將會擔負更多的工作,包括對數據庫的訪問和對應用程序的執(zhí)行。瀏覽器發(fā)出請求,而其余工作,包括數據請求、數據加工、結果返回以及動態(tài)網頁生成等工作全部由Web Server完成。系統(tǒng)同時采用面向對象的軟件開發(fā)方法,以MyEclipse作為前臺開發(fā)工具,以 Tomcat為服務器,以MySQL作為后臺數據庫開發(fā)平臺,實現(xiàn)了操作系統(tǒng)在線考試的功能需求。</p><p>  MySQL數據庫是

19、一個分布式的關系型數據庫管理系統(tǒng),具有客戶機/服務器體系結構,且具有圖形化用戶界面,使系統(tǒng)管理和數據庫管理更加直觀、簡單;同時具有豐富的編程接口工具,為用戶進行程序設計提供了更廣闊地選擇空間。</p><p>  Apache Tomcat作為該系統(tǒng)的服務器,它是一個開放源代碼的Web 應用服務器且是免費的,屬于輕量級應用服務器,在許多中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合中被普遍使用,是開發(fā)和調試JSP 程序的

20、首選。實際上,Tomcat 部分是Apache 服務器的擴展,但它是獨立運行的,所以當系統(tǒng)在運行Tomcat 時,它實際上作為一個與Apache 獨立的進程單獨運行的。當在一臺機器上配置好Apache服務器后就可以利用它響應HTML 頁面的訪問請求。</p><p>  結合系統(tǒng)的特點和功能,系統(tǒng)的編程語言選擇的是Java和Jsp,Java是完全面向對象的語言,是主流的編程開發(fā)語言之一。而JSP是由Sun Mic

21、rosystems公司倡導、多家公司共同參與建立的一種動態(tài)技術標準,現(xiàn)在的JSP網頁就是在傳統(tǒng)的網頁HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP標簽,Java程序片段可以發(fā)送E-mail、重新定向網頁、操縱數據庫等,能夠實現(xiàn)建立動態(tài)網站所需要的功能,并且所有程序操作都將在服務器端執(zhí)行,網絡上僅僅將結果傳送給客戶端,因此,大大降低了對客戶瀏覽器的要求。</p><p>

22、;  1.3 系統(tǒng)開發(fā)環(huán)境</p><p>  (1)操作系統(tǒng):Windows 7;</p><p>  (2)開發(fā)工具:MyEclipse 6.5</p><p>  (3)服務器軟件:Apache Tomcat 6.0</p><p>  (4)數據庫:MySQL</p><p>  (5)開發(fā)語言:Java<

23、;/p><p>  1.4 論文組織結構</p><p>  本論文在第一章介紹了本系統(tǒng)的開發(fā)背景、意義以及使用到的開發(fā)工具和技術,第二章敘述了需求分析和可行性分析,第三章主要介紹了系統(tǒng)的概要設計和詳細設計,第四章主要描述的是本系統(tǒng)后臺數據庫的設計,第五章是系統(tǒng)的實現(xiàn),在論文的最后是本次論文的結束語、致謝以及參考文獻,附錄部分是本次系統(tǒng)設計中具有代表性的代碼。</p><p

24、>  第2章 需求分析與可行性分析</p><p><b>  2.1 需求分析</b></p><p>  建立操作系統(tǒng)課程遠程考試系統(tǒng),主要就是為了充分利用計算機技術和數據庫技術,改變操作系統(tǒng)課程傳統(tǒng)的紙質考試模式,實現(xiàn)無紙化和自動化相結合的現(xiàn)代考試模式。采用以計算機為主的現(xiàn)代化設備實現(xiàn)對遠程考試過程中信息的管理和維護,從而大大的提高考試工作中的效率。&l

25、t;/p><p>  對于操作系統(tǒng)遠程考試系統(tǒng)而言,系統(tǒng)的需求分析工作非常重要,它規(guī)定了系統(tǒng)的基本要求,為系統(tǒng)的最終目標制定了完整、清晰和具體的規(guī)劃,是系統(tǒng)設計與實現(xiàn)的依據。其具體任務是:首先確定用戶對系統(tǒng)的整體要求,分析系統(tǒng)的數據結構,其次導出系統(tǒng)的數據字典以及系統(tǒng)流程,最后確定和評價系統(tǒng)的方案,初步制定系統(tǒng)的開發(fā)計劃。</p><p>  在需求分析階段,我們的關注點不是“怎么做”,而是“

26、做什么”。不是具體的解決問題,而是能夠準確地確定“為了滿足客戶需求,目標系統(tǒng)必須實現(xiàn)什么”。即確定目標系統(tǒng)必須具備的功能。</p><p>  但是,在實際的過程中,用戶通常對他們所面對的問題和所需要的功能很了解,但往往不能準確、完整地表達出來,更不知道怎樣利用計算機技術來解決他們的問題,于此同時,軟件開發(fā)人員知道怎樣從計算機技術方面滿足客戶的需求,但對特定用戶的具體要求并不清楚。因此為了解決這個問題,就需要在需

27、求分析階段實現(xiàn)軟件開發(fā)人員和用戶之間進行充分的信息交流,得出經過用戶確認的系統(tǒng)邏輯模型,以保證在目前的技術和人員條件下,用戶的需求是可實現(xiàn)的,系統(tǒng)邏輯模型也是合理可行的。</p><p>  需求分析各過程如下:</p><p>  (1)問題識別:確定目標系統(tǒng)做什么,包括:系統(tǒng)功能、性能、安全性、穩(wěn)定性、用戶操作界面、系統(tǒng)開發(fā)成本和進度等,同時建立需求分析所需的通信渠道。</p&g

28、t;<p>  (2)問題分析:從數據流和數據結構出發(fā),逐步細化所有的模塊功能,分析每個元素之間的聯(lián)系和接口特性,確定它們是否滿足系統(tǒng)功能需求,對于不滿足的給予剔除并整理成綜合解決方案,給出目標系統(tǒng)的詳細邏輯模型。</p><p>  (3)編制需求分析文檔。</p><p><b>  (4)需求評審。</b></p><p>

29、  在本系統(tǒng)中,主要的需求模塊為:</p><p>  (1)用戶管理:管理員擁有對用戶的最高管理權限,可以對所有的教師和考生用戶進行管理,包括用戶信息的查詢,修改,刪除,添加等。教師及考生只擁有修改自己信息的權限,對于他人的信息不能進行任何操作。</p><p>  (2)題庫管理:系統(tǒng)管理員不僅對系統(tǒng)用戶進行管理,同時也需要對試題庫哭進行管理,通過在試題庫進行增刪查改操作,從而可以調出

30、適合的題目組成試卷,試卷使用權得到批準后,既可以用于考生考試。</p><p><b>  2.2 可行性分析</b></p><p>  2.2.1經濟可行性</p><p>  目前高校普遍擁有信息化的處理設施和支持遠程考試系統(tǒng)的應用平臺。因此無需再投入資金購買其他設施,只需在軟件開發(fā)方面投入少許經費即可,并且本系統(tǒng)在實施之后能夠顯著地提高

31、考試系統(tǒng)的工作效率,降低管理費用和勞動費用,提高人員利用率,實現(xiàn)人力資源合理分配,從而達到資源優(yōu)化,保證了工作質量,避免出現(xiàn)人為因素造成的差錯,降低了考試過程中的預算,因此,操作系統(tǒng)遠程考試系統(tǒng)在經濟上是可行的。</p><p>  2.2.2 技術可行性</p><p>  技術可行性分析主要是分析當前的開發(fā)條件是否能夠滿足系統(tǒng)開發(fā)需求。</p><p>  硬件

32、方面:隨著網絡科技的不斷發(fā)展,硬件的可靠性越來越高,能夠充分滿足當前軟件開發(fā)的硬件需求。</p><p>  軟件方面:編程軟件以及系統(tǒng)設計的技術日趨完善,如java,JSP等技術,并且網絡上可以搜集到許多系統(tǒng)設計的模板,可以為本系統(tǒng)的開發(fā)和實現(xiàn)提供很好的參考。利用JSP技術可以建立先進、安全和跨平臺的動態(tài)網站,且目前包括MySQL在內的數據庫技術也相當完善,這些技術都為本系統(tǒng)的設計與實現(xiàn)提供了堅實的技術保障,就

33、其目前的發(fā)展水平來說,完全能夠滿足本次系統(tǒng)的開發(fā)與運用。</p><p><b>  第3章 系統(tǒng)設計</b></p><p>  3.1 系統(tǒng)概要設計</p><p>  在需求分析階段,明確了“系統(tǒng)需要做什么”,現(xiàn)在在概要設計階段就是回答“應該怎樣做”。因此,概要設計就是將系統(tǒng)中多種物理元素進行劃分,包括:程序、文件、數據庫、文檔等,但是

34、每個物理元素依然處于黑盒子階段,黑盒子里面的具體內容仍需在后續(xù)的詳細設計中進行具體地設計。概要設計中確定的功能主要有:用戶登錄功能、用戶信息管理功能、考生在線考試功能、成績查詢功能、試卷選擇功能、試題庫管理功能等。</p><p><b>  3.2 系統(tǒng)結構圖</b></p><p>  操作系統(tǒng)在線考試系統(tǒng)主要包括兩個子系統(tǒng):用戶前臺系統(tǒng)和后臺管理系統(tǒng)。</

35、p><p><b>  前臺系統(tǒng)結構圖:</b></p><p>  圖 3-1前臺系統(tǒng)結構圖</p><p> ?。?)后臺系統(tǒng)結構圖:</p><p>  圖 3-2后臺系統(tǒng)結構圖</p><p><b>  3.3系統(tǒng)詳細設計</b></p><p>

36、;  操作系統(tǒng)遠程考試系統(tǒng)的詳細設計階段的目標是要確定怎樣具體的實現(xiàn)系統(tǒng),換句話說,就是對目標系統(tǒng)進行精確地描述,從而在編碼階段把用戶的描述翻譯成程序語言。但是,需要明確的是,詳細設計階段的任務并不是具體的編寫程序,而是要設計出程序的“藍圖”,這個“藍圖”既是程序員在編寫程序代碼時的依據。因此,詳細設計階段的工作是極其重要的,它將直接決定最后程序編寫的質量。</p><p>  在本次的系統(tǒng)詳細設計中,主要是分為

37、若干模塊經行設計,先要保證每個模塊功能的正確實現(xiàn),才能保證最終整個系統(tǒng)的功能的實現(xiàn)。</p><p><b>  具體如圖所示:</b></p><p>  圖 3-3 在線考試系統(tǒng)模塊圖</p><p>  在本次的操作系統(tǒng)遠程考試系統(tǒng)中,用戶必須輸入正確的用戶名和密碼才能進入系統(tǒng),并且采用了權限登錄,把用戶分為管理員、教師和考生。在系統(tǒng)中的

38、管理員管理模塊,主要實現(xiàn)的是功能有添加、刪除、查詢試題和用戶信息等功能。在系統(tǒng)中的老師模塊,主要實現(xiàn)在系統(tǒng)中閱卷,改卷以及對自己的信息經行修改。在系統(tǒng)中的考生模塊,主要實現(xiàn)的是功能有考生考試、查詢成績及對自己信息經行修改等功能。</p><p><b>  3.4系統(tǒng)設計目標</b></p><p>  本系統(tǒng)應達到以下目標:</p><p>

39、 ?。?)系統(tǒng)操作界面簡潔、美觀。</p><p>  (2)用戶通過不同的身份進入系統(tǒng)且不同身份的用戶權限不一,包括教師、考生和管理員。</p><p> ?。?)系統(tǒng)能實現(xiàn)組卷,每個題型抽取部分題目,包括:選擇題、填空題、判斷題、簡單題。</p><p> ?。?)在考生考試時需加入倒計時功能。</p><p>  (5)每個用戶可以對自

40、己的信息經行管理。</p><p>  3.5 系統(tǒng)用例示意圖</p><p>  操作系統(tǒng)遠程考試系統(tǒng)的面對對象的是考生、教師以及管理員??忌徒處熤饕倪M行前臺的操作,而管理員的任務主要是對系統(tǒng)進行必要的管理和維護,因此,在系統(tǒng)設計時要多從多種用戶的角度出發(fā),對系統(tǒng)的功能進行設計和完善。</p><p>  以下是系統(tǒng)的功能用例圖:</p><

41、;p>  圖3-4 系統(tǒng)功能用例圖</p><p>  第4章 數據庫設計</p><p>  4.1數據庫結構設計</p><p>  數據庫的設計分析就是對系統(tǒng)中的數據進行具體分析,明確用戶需要查詢、更新、刪除和保存哪些數據,然后分析數據結構與聯(lián)系,組成一份詳盡的數據字典,為后面的具體設計打下基礎。數據庫名為:kaos,共包含7張表:kaoshi為存放

42、考試成績,試卷創(chuàng)作時間等整體性情況的表,kaoshjilu為存放考試過程中具體的每張試卷情況的表,kecheng為存放課程信息的表,shijuan為試卷信息表,shiti為試題信息表, user為用戶表,其數據庫結構如下圖4-1:</p><p>  圖4-1 數據庫結構</p><p>  4.2數據庫實體關系圖</p><p>  該系統(tǒng)數據庫中擁有6個實體,

43、分別為:管理員、考生、教師、試卷、成績、試題;其中管理員與用戶,試題及試卷之間的關系是管理;考生和教師與成績之間是查詢關系;考生與試卷之間是考試關系,而教師與試卷之間是批改關系;用戶與成績間均是查詢關系;試卷的組成是從題庫中抽取得到的,因此試卷與試題間是調取的關系,具體的實體關系如下圖所示:</p><p><b>  nm</b></p><p><b>

44、;  11</b></p><p><b>  nm</b></p><p>  nnmn1</p><p><b>  11n</b></p><p><b>  1m</b></p><p>  圖4-2 試題

45、關系圖</p><p>  4.3數據庫實體屬性圖</p><p>  通過對系統(tǒng)進行需求分析規(guī)劃出數據庫各表的實體關系,以下是實體屬性圖。</p><p>  圖4-3 用戶實體圖</p><p>  圖4-4 考試實體圖</p><p>  圖4-5試記錄實體圖</p><p>  圖4-

46、6 試卷實體圖</p><p>  圖4-7 試題實體圖</p><p><b>  4.4數據庫表結構</b></p><p>  本系統(tǒng)數據庫名為kaos,共包含7張數據庫表:kaoshi、kaoshijilu、kecheng、shijuan、shijuanitem、shiti、user,以下是各表的結構:</p><

47、;p><b>  表4-1 考試表</b></p><p>  表4-2 考試記錄表</p><p><b>  表4-3 科目表</b></p><p><b>  表4-4 試卷表</b></p><p>  表4-5 試卷明細表</p><

48、;p><b>  表4-6 試題表</b></p><p><b>  表4-7 用戶表</b></p><p><b>  第5章 系統(tǒng)實現(xiàn)</b></p><p><b>  5.1 界面設計</b></p><p>  5.1.1 登錄界

49、面</p><p>  在瀏覽器中輸入http://localhost:8080/kaos后回車,即可進入操作系統(tǒng)遠程考試系統(tǒng)的登錄界面。不同的用戶通過輸入用戶名和密碼并選擇登錄方式后點擊登錄即可進入系統(tǒng)主界面。登錄界面如圖5-1所示。</p><p>  圖5-1 登錄界面</p><p>  用戶在登錄時,系統(tǒng)會對用戶的信息進行驗證,通過查找數據庫中的user

50、表,判斷用戶輸入的用戶名、密碼以及用戶身份是否是正確的,從而跳轉至相應的用戶界面,具體代碼如下:</p><p>  User user = userDao.selectBean(" where username = '" + username+ "' and password= '" + password + "' and use

51、rlock=0");</p><p>  if (user != null && role.equals(user.getRole()+"")) {</p><p>  HttpSession session = request.getSession();</p><p>  session.setAttribute(&

52、quot;user", user);</p><p>  this.setUrl("index");</p><p>  return "redirect";</p><p><b>  } else {</b></p><p>  HttpServletResponse

53、 response = ServletActionContext.getResponse();</p><p>  response.setCharacterEncoding("gbk");</p><p>  response.getWriter().print(</p><p>  "<script language=java

54、script>alert('用戶名或者密碼錯誤');window.location.href='index';</script>");</p><p><b>  }</b></p><p>  return null;</p><p>  5.1.2 管理員主界面</p>

55、<p>  不同用戶登錄到的主界面不同,圖5-2是管理員的登錄界面。</p><p>  圖5-2 管理員主界面</p><p>  點擊界面上的用戶用戶管理、試卷管理等就可以跳轉只相應的操作界面。例如點擊用戶管理—用戶添加按鈕時,通過this.setUrl("user/useradd.jsp")此語句可以實現(xiàn)跳轉至用戶添加的界面,如果返回值是SUCCE

56、SS,說明跳轉成功,否則,跳轉失敗。其他的界面也是通過這種方法實現(xiàn)。</p><p><b>  5.2 題庫管理</b></p><p>  題庫管理界面如圖5-3。</p><p>  圖5-3 題庫管理</p><p>  上圖是題庫管理對應的顯示界面,該界面是針對管理員的操作界面,管理員通過此界面可以實現(xiàn)對題庫

57、的操作,例如:設置題目的類型及數量、分值等,其中包含選擇題、填空題、判斷題、簡答題。添加后可以實現(xiàn)查看、修改或者刪除試題。在代碼部分要對當前頁面和頁面大小進行復制,通過語句int currentpage = 1;int pagesize = 20;即可實現(xiàn)。</p><p><b>  5.3試卷管理</b></p><p>  圖5-4 試卷管理界面</p&

58、gt;<p>  上圖為試卷管理界面,通過對試題庫中的試題進行選擇,在選擇的時候不僅可以選擇題目的類型,還可以標注題注的分值以及題目考查的知識點及考試時間等。這樣不僅可以幫助老師在改試卷時有給分的標準,而且也可以在考生考試的時候經行時間提醒。完成組卷后,試卷組成后也可以對試卷進行修改,刪除,從而實現(xiàn)試卷的多樣化。在使用試卷時,要首先對試卷的狀態(tài)進行判斷,若試卷狀態(tài)為“未使用”,需先設置為“使用”后再使用試卷。通過以下代碼實

59、現(xiàn):</p><p>  Shijuan bean = new Shijuan();</p><p>  bean.setKaoshishijian(Integer.parseInt(kaoshishijian));</p><p>  bean.setCreatetime(new Date());</p><p>  bean.setJua

60、nming(juanming);</p><p>  bean.setKecheng(kechengDao.selectBean(" where id= "+kemu));</p><p>  bean.setShifoushiyong("未使用");</p><p>  HttpSession session = requ

61、est.getSession();</p><p>  User user = (User) session.getAttribute("user");</p><p>  bean.setUser(user);</p><p><b>  5.4 閱卷管理</b></p><p>  圖5-5 閱

62、卷模塊</p><p>  該模塊教師用戶實現(xiàn)的,教師根據考生的用戶名或者真實姓名進行試卷的搜索并進行閱卷,此過程要求考生的用戶名不能為空,需通過一個IF語句進行判斷,判斷后才能實現(xiàn)閱卷界面的跳轉if(username!=null&&!””if(username!=null&&!””.equals(username))。閱卷后也可以實現(xiàn)對成績經行導出操作。在閱卷過程中,每題都有考查

63、的知識點備注,這樣可以方便教師在批閱簡答題時考慮給予的分值。</p><p>  5.5 考生考試管理</p><p>  圖5-6 考生考試模塊</p><p>  考生在登錄系統(tǒng)后選擇所要考試的科目,點擊“確定開始考試”,考試過程中有考試時間的倒計時,超出考試時間系統(tǒng)會自動收卷,結束考試。對于已經提交的試卷,教師登錄后就可以進行閱卷,評分。</p>

64、<p><b>  5.6修改密碼</b></p><p>  圖5-7 修改密碼模塊</p><p>  用戶可以在此界面對自己的密碼進行修改,這樣可以提高系統(tǒng)的安全性。</p><p><b>  第6章 結束語</b></p><p>  經過為期幾個月的設計和開發(fā),終于實現(xiàn)了操

65、作系統(tǒng)遠程考試系統(tǒng)的每一個模塊功能,在編譯,運行成功的瞬間,心中充滿了自豪感。在本次畢業(yè)設計的過程中,我充分的了解了軟件設計開發(fā)的工作流程,對Java編譯語言的運用更加靈活、熟練、精準,對數據庫MySQL 的操作也更為熟練。從需求分析,概要設計,詳細設計,模塊編碼,功能測試、集成測試到軟件設計的完成,通過實踐與理論相結合,進一步加深了我對軟件開發(fā)的了解,從而提高了我對計算機軟件這個專業(yè)的興趣。軟件的開發(fā)最基本的任務是要滿足客戶的需求,此

66、外還要有良好的設計,完備的文檔資料,方便于日后的系統(tǒng)維護。因此,做好系統(tǒng)設計并保存完備的文檔是不可或缺的部分。</p><p>  在本次系統(tǒng)開發(fā)的整個過程中,我都力求系統(tǒng)和文檔的規(guī)范化,將自己以前學的知識充分的運用到本次系統(tǒng)的開發(fā)中,盡量保證整個系統(tǒng)的開發(fā)進度和質量,最終順利完成了這次的畢業(yè)設計,使自己的大學生涯得以完美落幕。不過,在系統(tǒng)開發(fā)過程中,還是感覺自己欠缺很多的知識,因此就要求我在系統(tǒng)開發(fā)的同時仍然要

67、不斷的學習,就增長了系統(tǒng)開發(fā)的時間和難度,比如,平日學習中所采用的數據庫主要是SQL Server2000,但這次結合系統(tǒng)的開發(fā)特點,我選擇了自己不是很熟悉的MySQL。但在老師、同學的不斷幫助以及自己的不斷努力下,最終使自己的知識得以不斷地積累。完成了整個系統(tǒng)的開發(fā)與實現(xiàn)。當然在本系統(tǒng)中肯定還存在很多不足之處,希望各位評委老師和同學給予指正與建議。</p><p>  我相信,只要肯鉆研與不斷進取,就能實現(xiàn)完成

68、自己的任務,實現(xiàn)自身的追求,讓我們的青春汗水在奮斗中閃光!</p><p><b>  致 謝</b></p><p>  經過這段時間的努力,終于將操作系統(tǒng)遠程考試系統(tǒng)這個畢業(yè)課題完成。在這里,我首先要感謝的是我的指導老師**。在這次畢業(yè)設計的過程中,我遇到了許許多多的問題,但是*老師仍然給了我大量的時間讓我完成設計,并且給予我耐心地指導。正是他的悉心教導和妥善安

69、排保證了我在系統(tǒng)設計中各項任務以及論文寫作的順利完成。特別是在論文的審查階段,**老師對我的論文寫作進行嚴格督促,并耐心指導。在此,向我的導師**老師表示最誠摯的敬意和最衷心的感謝。</p><p>  同時還要感謝在畢業(yè)設計期間給予我指導和建議的其他專業(yè)課老師們,每當我遇到問題時,他們耐心的講解使我能夠很好地解決難題,同時也積累了寶貴的經驗。</p><p>  最后感謝和我一起討論和解

70、決問題的其他同學,他們讓我體會到了團隊精神的重要性,也正是我們之間的交流,相互的鼓勵和幫助才令整體的畢業(yè)設計的進度得以保持,最終使大家的畢業(yè)設計都得以順利完成。</p><p><b>  參考文獻</b></p><p>  [1] 李俊青.Java EE Web 開發(fā)與項目實戰(zhàn)[M].華中科技大學出版社,2011.</p><p>  [2

71、] 明日科技.Java 經典編程300例[M].清華大學出版社,2012.</p><p>  [3] 張孝祥,張紅梅.JavaScript 網頁開發(fā)—體驗式學習教程[M].清華大學出版社,2004</p><p>  [4] 張孝祥.深入Java Web開發(fā)內幕—核心基礎[M].電子工業(yè)出版社,2006.</p><p>  [5] 耿祥義.Java基礎教程[M]

72、.清華大學出版社,2004.</p><p>  [6] 苗雪蘭.數據庫系統(tǒng)原理及應用教程[M].機械工業(yè)出版社, 2007.</p><p>  [7] 張海藩.軟件工程(第二版)[M].人民郵電出版社,2006</p><p>  [8] 湯小丹,梁紅兵,哲鳳屏,湯子瀛.計算機操作系統(tǒng)(第三版)[M].西安電子科技大學出版社,2012</p>&l

73、t;p>  [9] Marty Hall.JavaScript高級程序設計[M].人民郵電出版社. 2006.</p><p>  [10] 龍馬工作室.典型網站建設[M].人民郵電出版社,2004.</p><p>  [11] 高寅.系統(tǒng)分析之路[M].電子工業(yè)出版社,2005.</p><p>  [12] 袁玫.網絡數據庫應用教程[M].人民郵電出版社

74、,2002</p><p>  [13] 范云之.基于Web數據庫在線考試系統(tǒng)的設計與實現(xiàn)研究[J].商丘師范學院學報, 2006,22(5):1-20.</p><p>  [14] Markus Aleksy,Axel Korthaus,Martin Schader.Use Java and the CORBA realization distribute type system[J]

75、.Journal of Pingxiang College,No.4,2005:104-105.</p><p>  [15] GOU Xue-rong, YU Bin. The Technical Strategy to Building Modem Distance Education System[J] Technology and Standardization of Telecommunication

76、Engineering,2000,(3): 4-6.</p><p>  [16] PENG Xu-fu. Discussion of Exchanged Distance Education[J]. Journal of Higher Correspondence Education(Natural Sciences)),2000, 13(2):4-7.</p><p><b>

77、;  附 錄</b></p><p>  本系統(tǒng)代碼較多,這里只附上具有代表意義的代碼文件。;</p><p><b>  //用戶登錄操作</b></p><p>  public String login() throws IOException {</p><p>  HttpServletReque

78、st request = ServletActionContext.getRequest();</p><p>  String username = request.getParameter("username");</p><p>  String password = request.getParameter("password");</

79、p><p>  String role = request.getParameter("role");</p><p>  User user = userDao.selectBean(" where username = '" + username+ "' and password= '" + passwor

80、d + "' and userlock=0");</p><p>  if (user != null && role.equals(user.getRole()+"")) {</p><p>  HttpSession session = request.getSession();</p><p> 

81、 session.setAttribute("user", user);</p><p>  this.setUrl("index");</p><p>  return "redirect";</p><p><b>  } else {</b></p><p&g

82、t;  HttpServletResponse response = ServletActionContext.getResponse();</p><p>  response.setCharacterEncoding("gbk");</p><p>  response.getWriter().print(</p><p>  "&

83、lt;script language=javascript>alert('用戶名或者密碼錯誤');window.location.href='index';</script>");</p><p><b>  }</b></p><p>  return null;</p><p>&

84、lt;b>  }</b></p><p><b>  //添加用戶操作</b></p><p>  public void useradd2() throws IOException {</p><p>  HttpServletRequest request = ServletActionContext.getRequest

85、();</p><p>  String truename = request.getParameter("truename");</p><p>  String username = request.getParameter("username");</p><p>  String role = request.getP

86、arameter("role");</p><p>  User bean = userDao.selectBean(" where username= '" + username</p><p>  + "' and userlock=0");</p><p>  if (bean ==

87、null) {</p><p>  bean = new User();</p><p>  bean.setCreatetime(new Date());</p><p>  bean.setPassword("111111");</p><p>  bean.setRole(0);</p><p&g

88、t;  bean.setTruename(truename);</p><p>  bean.setUsername(username);</p><p>  bean.setRole(Integer.parseInt(role));</p><p>  userDao.insertBean(bean);</p><p>  HttpServ

89、letResponse resp = ServletActionContext.getResponse();</p><p>  resp.setCharacterEncoding("utf-8");</p><p>  PrintWriter out = resp.getWriter();</p><p>  out.print(Util.ti

90、aozhuan("操作成功", "method!userlist", "userlist"));</p><p>  out.flush();</p><p>  out.close();</p><p><b>  } else {</b></p><p> 

91、 HttpServletResponse resp = ServletActionContext.getResponse();</p><p>  resp.setCharacterEncoding("utf-8");</p><p>  PrintWriter out = resp.getWriter();</p><p>  out.prin

92、t(Util.tiaozhuan("操作失敗,該用戶已存在", "method!userlist",</p><p>  "userlist"));</p><p>  out.flush();</p><p>  out.close();</p><p><b>  }&

93、lt;/b></p><p><b>  }</b></p><p><b>  //修改用戶操作</b></p><p>  public void userupdate2() throws IOException {</p><p>  HttpServletRequest request

94、 = ServletActionContext.getRequest();</p><p>  String truename = request.getParameter("truename");</p><p>  String role = request.getParameter("role");</p><p>  

95、User bean = userDao.selectBean(" where id= "</p><p>  + request.getParameter("id"));</p><p>  bean.setRole(Integer.parseInt(role));</p><p>  bean.setTruename(tru

96、ename);</p><p>  userDao.updateBean(bean);</p><p>  HttpServletResponse resp = ServletActionContext.getResponse();</p><p>  resp.setCharacterEncoding("utf-8");</p>

97、<p>  PrintWriter out = resp.getWriter();</p><p>  out.print(Util.tiaozhuan("操作成功", "method!userlist", "userlist"));</p><p>  out.flush();</p><p>

98、  out.close();</p><p><b>  }</b></p><p><b>  //試題庫管理</b></p><p>  public String kechenglist2() {</p><p>  HttpServletRequest request = ServletAc

99、tionContext.getRequest();</p><p>  int currentpage = 1;</p><p>  int pagesize = 20;</p><p>  if (request.getParameter("pageNum") != null) {</p><p>  currentpa

100、ge = Integer.parseInt(request.getParameter("pageNum"));</p><p>  pagesize = Integer.parseInt(request.getParameter("numPerPage"));</p><p><b>  }</b></p><

101、;p>  String where = " where kechenglock=0 order by id desc ";</p><p>  String where2 = " where kechenglock=0 ";</p><p>  int total = kechengDao.selectBeanCount(where2);&l

102、t;/p><p>  request.setAttribute("list", kechengDao.selectBeanList((currentpage - 1)</p><p>  * pagesize, pagesize, where));</p><p>  request.setAttribute("totalCount&quo

103、t;, total);</p><p>  request.setAttribute("ps", pagesize);</p><p>  request.setAttribute("pn", currentpage);</p><p>  request.setAttribute("url", "

104、;method!kechenglist2");</p><p>  this.setUrl("kecheng/kechenglist2.jsp");</p><p>  return SUCCESS;</p><p><b>  }</b></p><p><b>  //試題管理

105、</b></p><p>  public String shitilist() {</p><p>  HttpServletRequest request = ServletActionContext.getRequest();</p><p>  String kecheng = request.getParameter("id"

106、;);</p><p>  request.setAttribute("kechengid", kecheng);</p><p>  int currentpage = 1;</p><p>  int pagesize = 20;</p><p>  if (request.getParameter("pag

107、eNum") != null) {</p><p>  currentpage = Integer.parseInt(request.getParameter("pageNum"));</p><p>  pagesize = Integer.parseInt(request.getParameter("numPerPage"));<

108、/p><p><b>  }</b></p><p>  String where = " where shitilock=0 and kecheng.id="+kecheng+" order by id desc ";</p><p>  String where2 = " where shit

109、ilock=0 and kecheng.id="+kecheng;</p><p>  int total = shitiDao.selectBeanCount(where2);</p><p>  request.setAttribute("list", shitiDao.selectBeanList((currentpage - 1)</p>

110、<p>  * pagesize, pagesize, where));</p><p>  request.setAttribute("totalCount", total);</p><p>  request.setAttribute("ps", pagesize);</p><p>  request.s

111、etAttribute("pn", currentpage);</p><p>  request.setAttribute("url", "method!shitilist?id="+kecheng);</p><p>  this.setUrl("shiti/shitilist.jsp");</p&g

112、t;<p>  return SUCCESS;</p><p><b>  }</b></p><p><b>  //評分操作</b></p><p>  public void kaoshijiluupdate2() throws IOException {</p><p>  H

113、ttpServletRequest request = ServletActionContext.getRequest();</p><p>  String kaishiid = request.getParameter("kaoshiid");</p><p>  Kaoshi kaoshi = kaoshiDao.selectBean(" where i

114、d= "+kaishiid);</p><p>  String defen = request.getParameter("defen");</p><p>  String dianping = request.getParameter("dianping");</p><p>  Kaoshijilu bean

115、 = kaoshijiluDao.selectBean(" where id = "+request.getParameter("id"));</p><p>  kaoshi.setChengji2(kaoshi.getChengji2()+Double.parseDouble(defen)-bean.getDefen());</p><p>  

116、kaoshiDao.updateBean(kaoshi);</p><p>  bean.setDefen(Double.parseDouble(defen));</p><p>  bean.setDianping(dianping);</p><p>  bean.setShifougeifen("已給分");</p><

117、p>  kaoshijiluDao.updateBean(bean);</p><p>  HttpServletResponse resp = ServletActionContext.getResponse();</p><p>  resp.setCharacterEncoding("utf-8");</p><p>  PrintW

118、riter out = resp.getWriter();</p><p>  out.print(Util.tiaozhuan("操作成功", "method!kaoshijilulist?id="+kaishiid, "kaoshijilulist"));</p><p>  out.flush();</p>&

119、lt;p>  out.close();</p><p><b>  }</b></p><p>  //考試用戶成績查詢</p><p>  public String kaoshilist5() {</p><p>  HttpServletRequest request = ServletActionConte

120、xt.getRequest();</p><p>  String truename = request.getParameter("truename");</p><p>  String username = request.getParameter("username");</p><p>  StringBuffer

溫馨提示

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

評論

0/150

提交評論