2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩126頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  *****大學(xué)</b></p><p>  畢 業(yè) 論 文(設(shè)計(jì))</p><p>  題 目:基于JAVA在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) </p><p>  姓 名: </p><p>  學(xué)

2、 院: 理學(xué)與信息科學(xué)學(xué)院 </p><p>  專 業(yè): 通信工程 </p><p>  班 級: </p><p>  學(xué) 號: <

3、;/p><p>  指導(dǎo)教師: </p><p><b>  年 月 日</b></p><p><b>  目錄</b></p><p>  摘要......I</p><p>  Abstract:

4、II</p><p><b>  第一章引言1</b></p><p><b>  1.1課題背景1</b></p><p>  1.2課題的目的和意義1</p><p>  1.3對于該項(xiàng)目的描述1</p><p>  1.4 系統(tǒng)設(shè)計(jì)思想2</p>

5、<p>  1.5可行性分析3</p><p>  第二章 系統(tǒng)設(shè)計(jì)相關(guān)技術(shù)介紹及開發(fā)環(huán)境要求3</p><p>  2.1MVC模式的介紹4</p><p>  2.1.1MVC模式的概述4</p><p>  2.1.2MVC的強(qiáng)勢與劣勢4</p><p>  2.2 Java組件JavaBe

6、ans4</p><p>  2.2.1 什么是JavaBeans4</p><p>  2.3 JavaSE概述4</p><p>  2.4關(guān)于Struts5</p><p>  2.4.1 Struts簡介5</p><p>  2.4.2 Struts的主要功能5</p><p&

7、gt;  2.4.3 Struts工作原理5</p><p>  2.5 關(guān)于Swing6</p><p>  2.5.1 Swing簡介6</p><p>  2.5.2 為什么需要Swing6</p><p>  2.5.3 Swing帶給我們什么7</p><p>  2.6 關(guān)于開發(fā)環(huán)境的概述7&l

8、t;/p><p>  2.6.1操作系統(tǒng)7</p><p>  2.6.2開發(fā)語言7</p><p>  2.6.3開發(fā)環(huán)境8</p><p>  2.7關(guān)于布局的概述8</p><p>  2.7.1BorderLayout8</p><p>  2.7.2FlowLayout8<

9、;/p><p>  2.7.3GridLayout和GridBagLayout8</p><p><b>  2.8小結(jié)9</b></p><p>  第三章系統(tǒng)需求分析和總體設(shè)計(jì)9</p><p>  3.1 系統(tǒng)功能需求9</p><p>  3.2 系統(tǒng)設(shè)計(jì)的總體框架10</p&

10、gt;<p>  3.2.1軟件層次結(jié)構(gòu)10</p><p>  3.2.2界面與控制器的關(guān)系10</p><p>  3.2.3業(yè)務(wù)層介紹10</p><p>  3.2.4數(shù)據(jù)層介紹11</p><p>  3.3系統(tǒng)的用例圖11</p><p>  3.3.1 總體用例分析11</

11、p><p>  3.3.2 用戶管理用例分析12</p><p>  3.3.3 考試管理用例分析12</p><p>  3.3.4 考試題目管理用例分析13</p><p>  3.3.5 成績管理用例分析13</p><p><b>  3.4小結(jié)14</b></p>&

12、lt;p>  第四章系統(tǒng)的詳細(xì)設(shè)計(jì)14</p><p>  4.1客戶機(jī)的類14</p><p>  4.2服務(wù)器的類15</p><p>  4.3實(shí)體類部分15</p><p><b>  4.4工具類16</b></p><p>  4.5讀取配置文件類16</p&g

13、t;<p>  4.6系統(tǒng)運(yùn)行的詳細(xì)描述16</p><p>  4.7系統(tǒng)運(yùn)行圖以及主要的實(shí)現(xiàn)代碼20</p><p><b>  4.8小結(jié)28</b></p><p>  第五章總結(jié)與展望28</p><p>  5.1工作總結(jié)28</p><p>  5.2后續(xù)工作

14、展望29</p><p>  致謝............................................................................................................30</p><p><b>  參考文獻(xiàn):31</b></p><p>  基于JAVA

15、的在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p>  摘要:當(dāng)今節(jié)約已經(jīng)成為一個(gè)命題,在線考試系統(tǒng)的設(shè)計(jì)意在響應(yīng)這個(gè)話題,努力構(gòu)建無紙化管理。所謂的在線考試就是將考試安排在網(wǎng)上進(jìn)行,方便了考試的組織安排工作;節(jié)省了大量的時(shí)間與資源。在線考試系統(tǒng)適合考生分布范圍廣不容易集中的遠(yuǎn)程教育。本文通過對試題的導(dǎo)出,在線用戶的登錄,答題,以及考試結(jié)果的輸出進(jìn)行設(shè)計(jì),完成一個(gè)簡單的在線考試系統(tǒng)。本文基于JAVA,通過MVC結(jié)構(gòu),sw

16、ing進(jìn)行布局。綜上技術(shù),能夠?qū)⑾到y(tǒng)功能實(shí)現(xiàn)。</p><p>  關(guān)鍵字:遠(yuǎn)程教育、在線考試、MVC、JAVA、Swing</p><p>  Design and implementation of online examination based on java</p><p>  Abstract: Today's conservation has

17、become a proposition, online examination system design is intended to respond to this topic and build a paperless management. The so-called online exam is conducted online examination arrangements will facilitate the exa

18、mination of the organizational arrangements; saves a lot of time and resources. Online examination system is suitable for a wide range of candidates is not easy to focus on the distribution of distance education. Based o

19、n the examination of expo</p><p>  Keywords: distance learning, online examinations, MVC, JAVA, Swing</p><p><b>  第一章引言</b></p><p><b>  1.1課題背景</b></p>

20、<p>  隨著近些年來網(wǎng)絡(luò)的蓬勃發(fā)展使得網(wǎng)絡(luò)教育也得到了一定的認(rèn)可,代表了現(xiàn)代教育的重要發(fā)展趨勢,推動了教育的更新?lián)Q代。在這種形式下,網(wǎng)絡(luò)教育所伴隨的在線考試必定能在將來的教育事業(yè)上作用明顯。到目前為止,包括教育部在內(nèi)的教育執(zhí)行機(jī)構(gòu)等都在積極的制定在線考試機(jī)制,使得教育事業(yè)更上一層樓。所以,如今很多研發(fā)機(jī)構(gòu)都在響應(yīng)時(shí)代的命題對網(wǎng)絡(luò)教育以及附屬產(chǎn)業(yè)進(jìn)行探討和研發(fā)。伴隨著網(wǎng)頁技術(shù)對日常生活的滲透,開發(fā)一個(gè)在線考試系統(tǒng)已經(jīng)勢在

21、必行。</p><p>  1.2課題的目的和意義</p><p>  根據(jù)現(xiàn)有情況,教育機(jī)構(gòu)和學(xué)校都還是采用以往的考試方式,即紙質(zhì)答卷。但是傳統(tǒng)紙質(zhì)考試步驟很繁瑣,考試組織機(jī)構(gòu)要組織人員更具自己的需求出試題;安排考生在所在考場考試;安排監(jiān)考人員監(jiān)考;安排閱卷人員對試題進(jìn)行評閱;最后安排閱卷結(jié)束后的總結(jié)大會并對考試情況作出分析報(bào)告。不只是這樣,其工作也將會是十分繁瑣并且非常容易出錯(cuò)。換句話

22、說,傳統(tǒng)的考試方式已經(jīng)在一定程度上不太適合現(xiàn)代考試的需求。在計(jì)算機(jī)應(yīng)用的迅猛發(fā)展的前提下,網(wǎng)絡(luò)應(yīng)用也伴隨著蓬勃發(fā)展。所以,無論是考試機(jī)構(gòu)還是考生都迫切需求一個(gè)應(yīng)用來減輕工作量。不僅減輕了考生的負(fù)擔(dān),而且也提高了考試的質(zhì)量。從而使考試更接近公平,公正,客觀,更能激發(fā)考生的學(xué)習(xí)積極性?,F(xiàn)在這種技術(shù)已經(jīng)得到初步推廣,得到了各種認(rèn)證考試的認(rèn)可。綜上需求,我們做出這個(gè)在線考試系統(tǒng)能夠在考試和學(xué)習(xí)的過程中起到便捷、提高考試質(zhì)量、減少閱卷工作量的作用

23、。</p><p>  1.3對于該項(xiàng)目的描述</p><p>  對計(jì)算機(jī)的應(yīng)用,使得生產(chǎn)效率得到了極大的提高,同時(shí)也使一部分生產(chǎn)力得到了解放。在信息化飛速發(fā)展的今天,計(jì)算機(jī)的應(yīng)用來解決實(shí)際生產(chǎn)生活中的問題已經(jīng)相當(dāng)普遍。鑒于傳統(tǒng)考試中使用紙質(zhì)試卷帶來的效率低下,信息滯后等詬病,我們迫切需要一個(gè)應(yīng)用解決這些問題。本文設(shè)計(jì)這個(gè)在線考試系統(tǒng),采用了JAVA編程語言實(shí)現(xiàn)考試系統(tǒng)。</p&g

24、t;<p>  本文介紹的這個(gè)在線考試系統(tǒng),考生通過系統(tǒng)許可。在用戶登錄界面輸入自己的賬戶和密碼,進(jìn)入考試系統(tǒng)。然后根據(jù)系統(tǒng)提示,完成考試作答并得到自己的分?jǐn)?shù)。上述這個(gè)過程全部都是在網(wǎng)絡(luò)上進(jìn)行并且解決了紙質(zhì)答卷的繁瑣過程。</p><p>  本文論述的在線考試系統(tǒng)主要分成兩個(gè)部分,即服務(wù)器部分與客戶端部分。這兩者之間是通過網(wǎng)絡(luò)連接起來的,服務(wù)器的一個(gè)線程和客戶端是連著的。</p>&

25、lt;p>  首先,在服務(wù)器部分,這部分首先啟動。然后,服務(wù)器開始讀取系統(tǒng)所需的配置文件。上述操作能夠使考試所用到的試題提交到服務(wù)器;接著讀取學(xué)生的信息、學(xué)號、姓名、密碼等都要出現(xiàn)在服務(wù)器中。將上述信息讀取到服務(wù)器中之后,將上述信息封裝在某個(gè)類中,緊接著等待客戶端發(fā)送請求。當(dāng)客戶端有請求發(fā)送,然后服務(wù)器就會與客戶端進(jìn)行連接。然后等待請求結(jié)束,該連接才會斷開。在這個(gè)過程中,服務(wù)器不斷監(jiān)聽客戶端的請求,控制運(yùn)行進(jìn)程。</p>

26、;<p>  其次,客戶端部分,設(shè)計(jì)的比較簡單。因?yàn)橐o學(xué)生操作,所以為了方便學(xué)生進(jìn)行操作,這里用到了圖形界面的操作。上邊提到的圖形界面總共有三個(gè)界面構(gòu)成。第一個(gè)就是用于學(xué)生考試的用戶登錄的界面:考生需要正確輸入自己的賬號和密碼才能登錄該系統(tǒng);第二個(gè)就是學(xué)生選擇考試科目的界面,在這個(gè)窗口出現(xiàn)之前先將前面一個(gè)窗口關(guān)閉,然后再創(chuàng)建新的窗口;第三個(gè)界面是考生的考試界面的窗口,進(jìn)入此界面也要關(guān)閉前一個(gè)窗口,緊接著當(dāng)考生完成考試,提

27、交試題,分?jǐn)?shù)自動顯示,然后關(guān)閉窗口。在此同時(shí),服務(wù)器同時(shí)要斷開連接,線程結(jié)束。綜上所述,就是客戶端的三個(gè)窗口。</p><p>  在這個(gè)在線考試系統(tǒng)中,本文涉及到兩個(gè)主要的類:即試卷類和學(xué)生類。這兩個(gè)類的信息,都是以配置文件的形式保存的。上述信息都可以用工具類讀取。</p><p>  1.4 系統(tǒng)設(shè)計(jì)思想</p><p>  本文所描述的在線考試系統(tǒng)是以服務(wù)器和

28、客戶端的連接為中心的,下述就是該系統(tǒng)的設(shè)計(jì)思想。</p><p>  首先,服務(wù)器先啟動,服務(wù)器然后讀取配置文件。接著,將考試所需的考題以及規(guī)定格式寫入配置文件;然后,把考生的賬號密碼等信息寫入另一個(gè)配置文件中。服務(wù)器需要讀取試題信息,所以在設(shè)計(jì)時(shí)要定義學(xué)生類,試卷類以及題目類。當(dāng)客戶端與服務(wù)器之間連接時(shí)需要數(shù)據(jù)請求,這里包括多種請求類型。這里包含的請求有連接請求,考生登錄請求,試題發(fā)送請求,答題請求。為滿足上述

29、需求,我們要定義請求類,并且要求服務(wù)器不斷讀取請求信息。為了減少代碼量,我們這里需要幾個(gè)工具類:一個(gè)是創(chuàng)建套接字的連接;另一個(gè)就是用來讀取配置文件的工具類。這樣就出來了服務(wù)器的基本框架。</p><p>  在客戶機(jī)這邊,我們只需考慮一個(gè)線程就行了。并且涉及到四個(gè)類,這之中有三個(gè)窗口類和一個(gè)客戶機(jī)與服務(wù)器線程連接的類。這個(gè)連接類是上述三個(gè)窗口類的一個(gè)屬性,這個(gè)屬性用來使三個(gè)窗口類與服務(wù)器進(jìn)行數(shù)據(jù)通信。三個(gè)窗口也只

30、能通過上述連接類與服務(wù)器之間進(jìn)行通信。這樣這個(gè)客服器的整體設(shè)計(jì)也就呈現(xiàn)出來了。</p><p>  此外還要說一下就是,客戶機(jī)與服務(wù)器進(jìn)行連接是通過IP和端口號數(shù)據(jù)通信的。客戶機(jī)與服務(wù)器對應(yīng)關(guān)系如下:一個(gè)客戶機(jī)對應(yīng)一個(gè)服務(wù)器;而一個(gè)服務(wù)器對應(yīng)多個(gè)客戶機(jī)。服務(wù)器與客戶機(jī)通過線程連接。</p><p><b>  1.5可行性分析</b></p><p

31、>  鑒于在線考試系統(tǒng)的美好前景,本項(xiàng)目的設(shè)計(jì)目標(biāo)是實(shí)現(xiàn)考試系統(tǒng),并且能夠?qū)崿F(xiàn)其相應(yīng)的業(yè)務(wù)功能,例如登錄功能,考試功能,管理員修改難度系數(shù),考試時(shí)間,題目數(shù),考試得分等。此項(xiàng)目需要實(shí)現(xiàn)如下功能。</p><p>  登錄功能:用戶能夠準(zhǔn)確無誤的登錄考試系統(tǒng)。二、考試功能:實(shí)現(xiàn)基本的業(yè)務(wù)邏輯。三、查看分?jǐn)?shù):在考試結(jié)束后,考生能夠看到考試分?jǐn)?shù)。四、管理員可以根據(jù)系統(tǒng)定義修改難度系數(shù)和題目數(shù)。五、題目切換:實(shí)現(xiàn)上

32、一題與下一題的切換。六、其他功能還有計(jì)時(shí)功能等。</p><p>  第二章 系統(tǒng)設(shè)計(jì)相關(guān)技術(shù)介紹及開發(fā)環(huán)境要求</p><p>  2.1MVC模式的介紹</p><p>  2.1.1MVC模式的概述</p><p>  MVC是 模型(Model),視圖(View)和控制(Controller)的縮寫。其中Model層用來實(shí)現(xiàn)系統(tǒng)中的業(yè)

33、務(wù)邏輯,通常可以用JavaBean來實(shí)現(xiàn); View層用于與用戶的交互; Controller層連接模塊與視圖,它可以是用戶的請求得到恰當(dāng)?shù)囊晥D予以顯示,同時(shí)它也可以是用戶的輸入得到解釋并將它們映射為模型層可執(zhí)行的操作。</p><p>  2.1.2MVC的強(qiáng)勢與劣勢</p><p>  優(yōu)點(diǎn):低耦合性,使得更改視圖層代碼就不用重新編譯模型和控制器代碼。高重用性和可適用性,允許你是用各種

34、方式的視圖來訪問同一個(gè)服務(wù)器端的代碼??焖俚牟渴?,使用MVC模式是的開發(fā)時(shí)間得到相當(dāng)大的縮減。</p><p>  缺點(diǎn):MVC的缺點(diǎn)是它沒有明確的定義,不容易理解。</p><p>  2.2 Java組件JavaBeans</p><p>  2.2.1 什么是JavaBeans</p><p>  JavaBeans是一種企業(yè)級開發(fā)中的

35、技術(shù)規(guī)范,凡是遵循該規(guī)范的類都稱為JavaBeans類,又叫做pojo類。該規(guī)范主要包含以下幾點(diǎn):</p><p>  1.所有的類都必須實(shí)現(xiàn)序列化接口。</p><p>  2.所有的屬性盡量定義為私有屬性。</p><p>  3.所有的方法定義為公有方法。 </p><p>  4.提供屬性的get和set方法,通過該方法可以訪問屬性。

36、</p><p>  2.3 JavaSE概述</p><p>  JavaSE是java Standard edition的縮寫。JavaSE就是Java的標(biāo)準(zhǔn)版,主要用于桌面應(yīng)用軟件的編程。JavaSE 包含那些構(gòu)成Java語言核心的類。比如:數(shù)據(jù)庫連接、接口定義、輸入/輸出、網(wǎng)絡(luò)編程。</p><p>  JavaSE具有以下幾個(gè)特點(diǎn):第一,它比較容易開發(fā);第

37、二,它啟動時(shí)間短,內(nèi)存占用較少;第三,它還有元數(shù)據(jù)特性。</p><p>  2.4關(guān)于Struts</p><p>  2.4.1 Struts簡介</p><p>  Struts是開源軟件。使用Struts的目的是為了幫助我們減少在運(yùn)用MVC設(shè)計(jì)模型應(yīng)用的時(shí)間。Struts已逐步越來越多運(yùn)用于商業(yè)軟件,是一種非常優(yōu)秀的JavaSE MVC實(shí)現(xiàn)方式。</p

38、><p>  2.4.2 Struts的主要功能</p><p>  1.Struts包含一個(gè)controller servlet,能夠?qū)⒖蛻舳说恼埱蟀l(fā)送給Action對象。</p><p>  2.它提供了一系列實(shí)用對象:通過Java reflection自動處理JavaBeans屬性、提示和消息。Struts提供了它自身的控制器組件,并且整合了其他技術(shù),用來提供模型

39、和視圖。Struts正逐步被運(yùn)用,是性能良好的MVC實(shí)現(xiàn)方式。</p><p>  2.4.3 Struts工作原理</p><p>  這里我們先來介紹一下MVC,MVC是Model-View-Controller的縮寫。它作為稱用得設(shè)計(jì)模式得到了廣泛的運(yùn)用。MVC 使數(shù)據(jù)接口和邏輯接口連接減弱,并且使得視圖更加富有變化性。MVC使得程序邏輯清晰,更容易被人理解。</p>

40、<p>  MVC的工作原理如下2-1所示:</p><p>  2-1MVC的工作原理</p><p>  接下來,我們說一下Struts,它作為MVC的一種實(shí)現(xiàn)。Struts繼承了MVC的各項(xiàng)特性,具有MVC的特點(diǎn)。并根據(jù)JavaSE的特點(diǎn),做出了相應(yīng)的更改。Struts的工作原理,如下圖2-2所示:</p><p>  2-2Struts的工作原理&

41、lt;/p><p>  2.5 關(guān)于Swing</p><p>  2.5.1 Swing簡介</p><p>  Swing是建立在AWT之上的組件集。除提供了AWT所缺少的、大量的附加組件外,Swing還提供了替代AWT重量組件的輕量組件。AWT中文含義抽象窗口工具包(Abstract Window Toolkit)功能是Java開發(fā)用戶界面最初的工具包。Swing

42、還包括了一個(gè)用于實(shí)現(xiàn)插入式界面樣式特性的圖形用戶界面的下層構(gòu)件。因此,在不同的平臺上,Swing組件都能保持組件的界面樣式特性。例如雙緩沖、調(diào)試圖形和文本編輯包等。</p><p>  2.5.2 為什么需要Swing</p><p>  Swing設(shè)計(jì)者采用的設(shè)計(jì)模式:模型——視圖——控制器(MVC)模式。該設(shè)計(jì)模式遵循一個(gè)基本原則:它限制一個(gè)對象的功能的數(shù)量。防止一個(gè)按鈕完成所有的事情

43、。而應(yīng)該分配內(nèi)容,比如說讓一個(gè)對象負(fù)責(zé)組件的觀感,另一個(gè)對象負(fù)責(zé)存儲內(nèi)容。</p><p>  當(dāng)程序員想要使用Swing組件來完成開發(fā)時(shí),不需要考慮MVC體系結(jié)構(gòu)。每個(gè)用戶界面的元素都有一個(gè)包裝器的類來保存模型和視圖。當(dāng)需要查詢所需要的內(nèi)容時(shí),包裝器類會向模型詢問并且返回所要的內(nèi)容。當(dāng)想要改變視圖時(shí)(例如,在一個(gè)文本域中改變光標(biāo)位置的時(shí)候),包裝類會把此請求轉(zhuǎn)發(fā)給視圖。然而,有時(shí)候包裝器轉(zhuǎn)發(fā)命令并不得力。在這種

44、情況下,就必須直接地與模型進(jìn)行交互。</p><p>  2.5.3 Swing帶給我們什么</p><p>  MVC模式吸引廣大Swing設(shè)計(jì)者原因是這種模式允許實(shí)現(xiàn)可插觀感。每個(gè)按鈕或者文本域的模型是獨(dú)立于觀感的。當(dāng)然可視化表明完全依賴于特殊觀感的用戶界面的設(shè)計(jì),并且控制器可以改變它。比如,在一個(gè)語音控制設(shè)備中,控制其需要處理的各種事件與使用鍵盤和鼠標(biāo)的標(biāo)準(zhǔn)計(jì)算機(jī)完全不同。Swing

45、設(shè)計(jì)者通分離底層模型與用戶界面,這樣能夠重用模型的代碼,更甚于在程序運(yùn)行時(shí)對觀感進(jìn)行切換。</p><p>  對于絕大多數(shù)組件,模型類將實(shí)現(xiàn)一個(gè)以Model命名結(jié)尾的接口。比如,我們所知道的按鈕就實(shí)現(xiàn)了ButtonModel接口。實(shí)現(xiàn)上述接口的類可以定義各種按鈕的狀態(tài)。上述按鈕并不是很復(fù)雜,在Swing組件庫中就有個(gè)叫DefaultButtonModel的類就實(shí)現(xiàn)了這個(gè)接口。在試圖對象中,每個(gè)Swing組件都有

46、一個(gè)相關(guān)的后綴UI的視圖對象。</p><p>  2.6 關(guān)于開發(fā)環(huán)境的概述</p><p><b>  2.6.1操作系統(tǒng)</b></p><p>  此在線考試系統(tǒng)的開發(fā)環(huán)境是Windows系統(tǒng),該系統(tǒng)安全系數(shù)比較高而且方便。</p><p>  2.6.2開發(fā)語言</p><p>  開

47、發(fā)語言:jdk1.6.0_10。JDK(Java Development Kit)是Sun 公司針對Java開發(fā)員研發(fā)的產(chǎn)品。</p><p>  Java的就是JDK,它包括了Java運(yùn)行環(huán)境(Java Runtime Envirnment);一堆Java工具和Java基礎(chǔ)的類庫(rt.jar)。所有的Java應(yīng)用程序都有某個(gè)版本的JDK與其相對應(yīng)。所以,要學(xué)好Java,首先要掌握J(rèn)DK。最能被程序員接受的是S

48、un公司發(fā)布的JDK。除了Sun之外,好多公司都開發(fā)了自己的JDK。例如GNU組織開發(fā)的JDK;IBM公司開發(fā)的JDK等。</p><p><b>  2.6.3開發(fā)環(huán)境</b></p><p>  開發(fā)環(huán)境:Eclipse6.0版。Eclipse 是一個(gè)基于JAVA的開發(fā)平臺。它的源代碼是開放的。該軟件本身是一個(gè)框架和一組服務(wù),用于通過插件組件來構(gòu)建開發(fā)環(huán)境。其中E

49、clipse 附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括了Java開發(fā)工具(Java Development Kit,JDK)。</p><p>  2.7關(guān)于布局的概述</p><p>  2.7.1BorderLayout</p><p>  BorderLayout用于邊框布局的布置容器。它可以對容器內(nèi)的組件等進(jìn)行布局設(shè)置。例如,調(diào)整大小,調(diào)整容器內(nèi)組件的位置。該容器有以下

50、五個(gè)區(qū)域:東、西、南、北、中。這五個(gè)位置,每個(gè)位置只允許包含一個(gè)組件。并且這些位置都有自己的標(biāo)志:EAST、WEST、SOUTH、NORTH、CENTER。</p><p>  2.7.2FlowLayout</p><p>  FlowLayout外觀管理器的功能就是把系統(tǒng)程序中所用的的各個(gè)組件按照先后順序由上到下,由左及右依次排開。</p><p>  2.7.

51、3GridLayout和GridBagLayout</p><p>  GridLayout的作用是將該窗口分成大小不等的均勻網(wǎng)格,然后使得組件能夠依次按格放入組件。 GridBagLayout的功能是根據(jù)設(shè)計(jì)者的想法,改變組件的大小,使它們能夠擺在想要的位置。</p><p><b>  2.8小結(jié)</b></p><p>  本章主

52、要介紹了該在線考試系統(tǒng)的關(guān)鍵技術(shù)和工具,對系統(tǒng)模式簡介MVC,以及串聯(lián)的Struts。使得模型——視圖——控制器直接進(jìn)行恰當(dāng)?shù)慕换?,完成各自的職能。用Swing布局器進(jìn)行布局,使得用戶界面的設(shè)計(jì)更加人性化。</p><p>  第三章系統(tǒng)需求分析和總體設(shè)計(jì)</p><p>  3.1 系統(tǒng)功能需求</p><p>  這個(gè)在線考試系統(tǒng)的設(shè)計(jì)目標(biāo)是實(shí)現(xiàn)考試系統(tǒng),讓考生

53、能夠自主考試完成答卷以及查分。并附帶實(shí)現(xiàn)相應(yīng)的業(yè)務(wù)功能,如登錄功能、考試功能、查分功能等。項(xiàng)目中的需實(shí)現(xiàn)的功能如下。</p><p>  1.登錄功能。考生能夠自主登錄該考試系統(tǒng),再輸入考生的賬號密碼后能夠準(zhǔn)確無誤的進(jìn)入考試系統(tǒng)。為考試完成做好充分的前提。</p><p>  2.考試功能。它主要業(yè)務(wù)邏輯就是考試功能??荚嚬δ埽櫭剂x,考試點(diǎn)擊該按鈕能夠打開試題進(jìn)行作答。進(jìn)入考試后系統(tǒng)為

54、考生自動分配考題,考生只需對試卷中出現(xiàn)的考題進(jìn)行作答即可。</p><p>  3.查看分?jǐn)?shù)??忌軌蛟诳荚嚱Y(jié)束后查看考試分?jǐn)?shù)。當(dāng)考生對自己分配到的試題做大完畢并確認(rèn)無誤后,提交試卷。系統(tǒng)會對考生對試題的作答準(zhǔn)確與否進(jìn)行判斷,進(jìn)而對考生的作答給出得分。</p><p>  4.查看考試規(guī)則。該考試系統(tǒng)能夠查閱考試規(guī)則??荚嚱M織者根據(jù)具體情況對考試規(guī)進(jìn)行編寫??忌诳荚嚽澳軌蜷喿x該規(guī)則,以免

55、出現(xiàn)不該發(fā)生的失誤。</p><p>  5.題目切換。實(shí)現(xiàn)上一題、下一題的切換。是考生能夠在做題的過程中進(jìn)行題目選擇,或者切換題目進(jìn)行答案糾正,題目檢查。</p><p>  6.計(jì)時(shí)功能??荚嚳颇慷加幸?guī)定一定的作答時(shí)間,該考試系統(tǒng)具有倒計(jì)時(shí)功能。考生能夠時(shí)刻看到自己的作答時(shí)間以及剩余時(shí)間。不至于因?yàn)闀r(shí)間問題影響自己的答題,計(jì)時(shí)功能能夠督促考生快速完成試題的作答。</p>

56、<p>  除此之外,該系統(tǒng)下管理員還可以修改難度系數(shù)和倒計(jì)數(shù)時(shí)間修改設(shè)定以及考題題目的增減來適應(yīng)不同的情況。</p><p>  3.2 系統(tǒng)設(shè)計(jì)的總體框架</p><p>  3.2.1軟件層次結(jié)構(gòu)</p><p><b>  控制層</b></p><p>  視圖層

57、 業(yè)務(wù)層 數(shù)據(jù)層</p><p><b>  3-1軟件層結(jié)構(gòu)</b></p><p>  在線考試系統(tǒng)軟件層次結(jié)構(gòu)大致以上述圖片進(jìn)行連接。首先,登陸窗體,菜單窗體,測試窗體共同構(gòu)成了用戶客戶端。用戶客戶端連接業(yè)務(wù)層,業(yè)務(wù)層連接數(shù)據(jù)層,三者共同構(gòu)成了該考試系統(tǒng)的軟件層結(jié)構(gòu)。</p><p>  

58、3.2.2界面與控制器的關(guān)系</p><p>  3-2界面與控制器的關(guān)系</p><p>  界面與控制器的關(guān)系大致由上圖就能夠表述出來,客戶端就是這里的控制器。它能夠控制選擇進(jìn)入各個(gè)界面。它根據(jù)考生的信息輸入請求,響應(yīng)進(jìn)入不同的考試界面。例如:登陸界面,選擇界面,和考試界面。綜上,呈現(xiàn)出控制器與界面的關(guān)系。</p><p>  3.2.3業(yè)務(wù)層介紹</p&

59、gt;<p>  在這個(gè)在線考試系統(tǒng)的開發(fā)中,業(yè)務(wù)層采用接口加實(shí)現(xiàn)的方式制作。其中項(xiàng)目中的業(yè)務(wù)層主要有以下幾個(gè)功能:</p><p>  1.驗(yàn)證用戶信息的正確性。當(dāng)用戶來到登陸界面,用戶需要輸入本人的賬號和密碼方能進(jìn)入該考試系統(tǒng)完成考試作答。當(dāng)輸入的賬號或者密碼不準(zhǔn)確時(shí),系統(tǒng)會做出報(bào)錯(cuò)信息。以免考試出現(xiàn)問題。</p><p>  2.從數(shù)據(jù)層抽取試題,生成試卷,為表現(xiàn)層提高

60、考試所需要的信息及試題。使考生能夠得到考試試題并完成考試。</p><p>  3.驗(yàn)證用戶的答案是否正確并且給出分?jǐn)?shù)。在考生完成試題作答后能夠獲取自己的得分。</p><p>  3.2.4數(shù)據(jù)層介紹</p><p>  在本次在線考試系統(tǒng)的開發(fā)中,數(shù)據(jù)層的主要實(shí)現(xiàn)的功能是讀取用戶信息,考題信息,考試信息等。</p><p>  讀取用戶信

61、息:數(shù)據(jù)層接收到登錄請求時(shí),數(shù)據(jù)層要調(diào)出用戶信息并且讀取。從而響應(yīng)請求,進(jìn)而用戶能夠順利進(jìn)入考試系統(tǒng)。</p><p>  考題信息:當(dāng)用戶登錄考試系統(tǒng)成功,考生要進(jìn)行考試,必須發(fā)送考試請求。這時(shí),數(shù)據(jù)層要調(diào)出考題信息,形成考題。這樣,考生就能進(jìn)入考試界面并完成考試作答。</p><p>  考試信息:當(dāng)考生開始答卷,數(shù)據(jù)層要不斷地更新考試信息。并通過考生的答案提交判斷考生的得分。當(dāng)考生提

62、交試卷,數(shù)據(jù)層提交考生得分。</p><p><b>  3.3系統(tǒng)的用例圖</b></p><p>  3.3.1 總體用例分析 </p><p><b>  在線考試系統(tǒng)</b></p><p><b>  3-3總體用例圖</b></p&g

63、t;<p>  由上圖我們可以看出該考試系統(tǒng)分為以上五個(gè)部分即:用戶管理部分,考試管體部分,成績管理部分以及試題管理部分。其中,用戶管理部分是對用戶的個(gè)人信息進(jìn)行統(tǒng)一管理,使用戶能夠登陸該在線考試系統(tǒng)??荚嚬芾聿糠质侵缚忌俚顷懣荚囅到y(tǒng)后,對考試進(jìn)行的所有操作,比如,查看考試規(guī)則、進(jìn)行考試、試卷提交等,都貴考試管理部分統(tǒng)一作出處理。成績管理系統(tǒng)就是當(dāng)用戶提交試卷,系統(tǒng)給出分?jǐn)?shù)后,它要對數(shù)據(jù)進(jìn)行處理并能夠在用戶界面呈現(xiàn)出來。

64、試題管理部分是管理者將試題導(dǎo)入該考試系統(tǒng),并將試題進(jìn)行分類。當(dāng)用戶點(diǎn)擊考試請求,試題管理部分自動分配考題供用戶作答。上述的使用者分為兩部分,其中一部分是管理者;另一部分是用戶。</p><p>  3.3.2 用戶管理用例分析</p><p>  通過下圖我們能夠看到用戶管理分為以下四部分,當(dāng)用戶登陸考試系統(tǒng)后可以進(jìn)行以下五個(gè)操作即:考試開始,分?jǐn)?shù),考試規(guī)則,試題提交以及離開。當(dāng)考生點(diǎn)擊考

65、試開始,系統(tǒng)就為用戶分配好試題。當(dāng)然在開始考試前最好看一下考試規(guī)則,以免出現(xiàn)非受獲性失誤。當(dāng)用戶提交考題時(shí)要進(jìn)行試卷提交操作,接著用戶會得到考試結(jié)果即考試分?jǐn)?shù)。最后用戶進(jìn)行離開操作,離開考試系統(tǒng)。這樣,一次完整的在線考試就結(jié)束了。這就是用戶所能體驗(yàn)的在線考試系統(tǒng)的用戶的所有操作。 </p><p><b>  在線考試系統(tǒng)</b></p>

66、<p><b>  3-4用戶管理</b></p><p>  3.3.3 考試管理用例分析</p><p><b>  考試管理</b></p><p><b>  3-5考試管理</b></p><p>  綜上圖,我們可以得到考試管理部分包括以下五個(gè)管理項(xiàng)目

67、。就是考試規(guī)則的修訂填充;考試系統(tǒng)曾是正常時(shí)刻準(zhǔn)備用戶考試;開始考試,對考試進(jìn)行計(jì)時(shí),以及監(jiān)督用戶進(jìn)行考試操作,進(jìn)行整錯(cuò)判斷;用戶提交試卷后,考試管理自動判斷用戶所做出的答案并進(jìn)行評分;最后考試管理提供用戶分?jǐn)?shù)。這些都能被用戶體驗(yàn)。</p><p>  3.3.4 考試題目管理用例分析</p><p><b>  題目管理</b></p><p&g

68、t;<b>  3-6題目管理</b></p><p>  上圖所描述的是管理者對題目進(jìn)行的管理操作。它包含五部分:題目的增加、題目的刪除以及答案的設(shè)置。增加題目和刪除題目是管理者對試題庫的試題進(jìn)行數(shù)量的修訂,以滿足用戶對該考試系統(tǒng)的需求。答案設(shè)置就是對試題的正確結(jié)果作出明確標(biāo)出。綜上來實(shí)現(xiàn)管理者對題目的管理。</p><p>  3.3.5 成績管理用例分析<

69、/p><p><b>  成績管理</b></p><p><b>  3-7成績管理</b></p><p>  上圖是該系統(tǒng)的成績管理用例。管理者對用戶的成績進(jìn)行管理,用戶能夠查詢自己的成績。完成系統(tǒng)的成績顯示職能。</p><p><b>  3.4小結(jié)</b></p&

70、gt;<p>  這一章通過對系統(tǒng)功能需求、設(shè)計(jì)框架以及總體用例圖來分析系統(tǒng)需求和總體設(shè)計(jì)。由系統(tǒng)的功能需求夠做出系統(tǒng)的基本框架,通過框架讓我們更能了解考試系統(tǒng)的基本構(gòu)造。最后通過系統(tǒng)的整體用例圖來說明用戶與管理者所需的操作以及在此考試系統(tǒng)中起到的作用。為在線考試系統(tǒng)的構(gòu)造做出更詳細(xì)的說明,為下邊在線考試系統(tǒng)的具體編寫做好堅(jiān)實(shí)的鋪墊。</p><p>  第四章系統(tǒng)的詳細(xì)設(shè)計(jì)</p>

71、<p>  前邊幾章我們已經(jīng)介紹過,本文所描述的在線考試系統(tǒng)主要有兩部分組成:客戶機(jī)部分和服務(wù)器部分。此外,該系統(tǒng)還涉及到一些實(shí)體類和一些工具類。這些類在系統(tǒng)中都是以包的形式存在,下邊我們來介紹一下考試系統(tǒng)的設(shè)計(jì)方式。按照包的形式。</p><p><b>  4.1客戶機(jī)的類</b></p><p>  客戶機(jī)的類包含LginFrame類、SelectSu

72、bjectFrame類、ExamMainFrame類、Client類。各個(gè)類在此考試系統(tǒng)中都扮演著不同的角色,下面我就來介紹一下。</p><p>  首先是登陸界面。該界面有登錄窗口、學(xué)號輸入框、密碼輸入框、確定進(jìn)入考試系統(tǒng)按鈕、取消按鈕等。這些都是都是使用的LginFranme類來編寫的實(shí)現(xiàn)的。</p><p>  而SelectSubjectFrame類用來編寫選擇科目的窗口、一個(gè)選

73、擇科目的標(biāo)簽、一個(gè)選擇科目的下拉菜單和一個(gè)確定按鈕以及一個(gè)取消按鈕。</p><p>  下邊這些都屬于ExamMainFrame類:學(xué)生考試窗口、考試窗口的標(biāo)題即在線考試系統(tǒng)、顯示題目的文本框、試題四個(gè)選項(xiàng)的可選項(xiàng)、顯示題號的框和剩余題目數(shù)的標(biāo)簽、上一題,下一題試題切換以及交卷按鈕、顯示剩余剩余時(shí)間的標(biāo)簽。</p><p>  以上就是本次考試系統(tǒng)中客戶機(jī)的類。</p>&

74、lt;p><b>  4.2服務(wù)器的類</b></p><p>  服務(wù)器中只用到了ServeletMainClass類,下邊我們屬性、方法和內(nèi)部類這個(gè)順序來介紹一下。</p><p>  首先,ServelettMainClass類的屬性有以下內(nèi)容。ss是ServerSocket的縮寫,其表示服務(wù)器的套接字;stuDao是由StudentDao縮寫而來的,它表

75、示學(xué)生信息;pro是Properties的縮寫,其含義是一個(gè)鍵值對,通信時(shí)傳輸信息用;pDao由PaperDao縮寫而來,它表示試卷信息。</p><p>  接著,我們介紹一下它的方法。其中,init()void表示初始化函數(shù);而main() void表示服務(wù)器啟動入口函數(shù)。</p><p>  最后,我們來介紹一個(gè)內(nèi)部類ServerThread,它有以下屬性。S是Socket的縮寫,它

76、表示與客戶機(jī)連接的套接字;oos是由ObjectOutputStream縮寫而來的,它表示對象輸出流。接著來描述一下它的方法,begin void是表示開始考試請求;login void用來表示登陸請求;其中sendvoid表示結(jié)束考試請求發(fā)送;run() void來表示線程運(yùn)行。</p><p><b>  4.3實(shí)體類部分</b></p><p>  其中實(shí)

77、體類包含四個(gè)類:一個(gè)學(xué)生類;一個(gè)試卷類;一個(gè)試題類;還有一個(gè)請求類。下面我們依次來看一下這些類的屬性和方法。</p><p>  首先,來看一下學(xué)生類。Student類,該類中有以下屬性:id是int整型的,它表示學(xué)生學(xué)號;name和passwd都是字符串型的,前一個(gè)表示學(xué)生學(xué)號,后一個(gè)表示學(xué)生的密碼。</p><p>  接下來,介紹一下試卷類。該類有以下三個(gè)屬性:subjectStr

78、ing來表示考試科目;allQusstionList用來表示所有題目的集合;answersList能夠表示出學(xué)生選擇的答案的集合。實(shí)現(xiàn)方法有如下,toString()void是將試卷轉(zhuǎn)換成字符串格式;而addQusetion() void是表示向試卷中添加題目。</p><p>  最后,來介紹一下試題類。此類包含以下屬性和方法。Question類,屬性如下:title是String字符串類型的,它表

79、示題目的標(biāo)題;answer是char字符類型的,它表示題目的正確選項(xiàng);items是List<String>(只能存儲字符串類型的集合)一個(gè)集合,它表示題目選項(xiàng)。Question類用到的方法如下:toString() void它表示將題目轉(zhuǎn)換成字符串格式。</p><p><b>  4.4工具類</b></p><p>  QuestionReader類

80、和SocketUtil類是該考試系統(tǒng)用到的工具類,前一個(gè)是表示封裝一些讀取磁盤文件的方法,后一個(gè)是表示封裝一些創(chuàng)建套接字連接的基本格式。</p><p>  4.5讀取配置文件類</p><p>  配置文件有以下兩個(gè)接口:StudentDao接口和PaperDao接口。分別需要運(yùn)用方法getStudent()和getPaper()。為了實(shí)現(xiàn)上述接口和方法,分別用StudentDaoFro

81、mTextFile類和PaperDaoFromFile類來實(shí)現(xiàn)上述接口和方法。最終能夠讀取配置文件。</p><p>  4.6系統(tǒng)運(yùn)行的詳細(xì)描述</p><p>  在4.1至4.5已經(jīng)介紹了系統(tǒng)中各種類的屬性以及方法。然而各種類之間存在著調(diào)用和依賴的關(guān)系,下邊就來分析一下這些關(guān)系。</p><p>  4-1系統(tǒng)運(yùn)行詳細(xì)圖</p><p>

82、;  上圖是這個(gè)在線考試系統(tǒng)的整體框架圖。從上邊的例圖我們可以看出,該系統(tǒng)最關(guān)鍵的就是服務(wù)器通過服務(wù)器線程與client直接的連接關(guān)系。該在線考試系統(tǒng)是在整個(gè)連接才使得客戶機(jī)與服務(wù)器發(fā)生聯(lián)系并完成整個(gè)在線考試過程的。服務(wù)器與客戶機(jī)之間的數(shù)據(jù)交換和通信都是以服務(wù)器與client之間的連接作為鋪墊的。系統(tǒng)在初始運(yùn)行時(shí)需要將配置文件中的數(shù)據(jù)讀取并傳送到到服務(wù)器中,然后,客戶機(jī)才能收到服務(wù)器傳送來的數(shù)據(jù)??蛻魴C(jī)的每個(gè)窗口的數(shù)據(jù)的傳輸都是以服務(wù)器

83、與client的連接為前提的。</p><p>  那么,接下來要介紹一下幾個(gè)重要類的具體的設(shè)計(jì)說明:</p><p><b>  1.服務(wù)器線程類</b></p><p>  服務(wù)器線程類,它是服務(wù)器主類的一個(gè)內(nèi)部類。因?yàn)樗皇欠?wù)器的類,只作為內(nèi)部類使用,因而它只被設(shè)計(jì)在服務(wù)器的內(nèi)部。當(dāng)服務(wù)器接收到來自客戶端的請求時(shí)該連接繼續(xù)進(jìn)行。服務(wù)是程

84、序創(chuàng)建的一個(gè)服務(wù)進(jìn)程與服務(wù)器連接而成的,它適合運(yùn)行run()方法。該方法用來判斷客戶端發(fā)送的請求類型,并且判斷調(diào)用何種方法。服務(wù)器然后發(fā)送相應(yīng)的數(shù)據(jù)。下面我們來詳細(xì)了解一下這個(gè)過程:</p><p>  首先,服務(wù)器在初始化init()方法是個(gè)while()死循環(huán),此時(shí),服務(wù)器不斷地監(jiān)聽客戶機(jī)套接字的請求,當(dāng)有請求到來時(shí),系統(tǒng)繼續(xù)往下運(yùn)行;接著,服務(wù)器構(gòu)建一個(gè)服務(wù)線程,這個(gè)服務(wù)線程源自線程類。它直接調(diào)用start

85、()方法,讓服務(wù)器繼續(xù)往下運(yùn)行,建立于client之間的連接。此時(shí),客戶端與該服務(wù)器的線程就建立起了連接。然后,服務(wù)線程創(chuàng)建一個(gè)輸出流,這個(gè)輸出流是用來給客戶機(jī)發(fā)送信息的。緊接著又是一個(gè)while()死循環(huán),不斷地從上述輸出流中讀取數(shù)據(jù),直到有判斷請求道來。</p><p>  下面我們要介紹一下判斷請求的類型。這個(gè)請求類型要使用到一個(gè)Request請求類,這里涉及到四個(gè)靜態(tài)常量。這里要使用到一個(gè)switch、c

86、ase 語法,來匹配所要調(diào)用的方法。如果調(diào)用的靜態(tài)常量是1,這里用到login_request,程序就調(diào)用login()方法。如果是靜態(tài)常量2,就要調(diào)用begin方法。如果是靜態(tài)常量3,就會調(diào)用交卷信息的send()方法。如果靜態(tài)常量4,就表示學(xué)生要退出考試的界面,這時(shí)候,客戶端關(guān)閉,服務(wù)器接收到退出請求之后,就要直接跳出循環(huán),然后關(guān)閉與之連接的流和套接字連接。</p><p>  綜上所述,這就是考試系統(tǒng)運(yùn)行的

87、基本過程。</p><p>  這里簡單描述一下上邊提到的幾個(gè)方法的作用。首先,login()就是發(fā)送用戶信息與考題給客戶端程序,然后進(jìn)入下一個(gè)進(jìn)程,繼續(xù)監(jiān)聽其他請求;begin()方法是根據(jù)用戶反映的信息對用戶進(jìn)行分發(fā)試題,然后繼續(xù)監(jiān)聽請求;send()是告訴服務(wù)器用戶考試結(jié)束。</p><p><b>  2.客戶端窗口類</b></p><p

88、>  客戶類的窗口類,是實(shí)現(xiàn)用戶由對這個(gè)系統(tǒng)進(jìn)行第一步操作開始,到操作結(jié)束為止所有的過程。從用戶登錄該系統(tǒng)開始,輸入用戶名密碼進(jìn)入考試界面,對考試規(guī)則等進(jìn)行閱覽,進(jìn)入考試一直到考試結(jié)束,提交考卷并得到考試分?jǐn)?shù),離開考試系統(tǒng)結(jié)束。下面就來詳細(xì)了解一下這個(gè)過程:</p><p>  首先,用戶啟動該考試系統(tǒng)程序,進(jìn)入登陸界面??忌仨氃诘顷懡缑孑斎胝_的用戶名和賬號方能進(jìn)入該考試系統(tǒng),否則,系統(tǒng)會自動報(bào)錯(cuò)并提醒

89、用戶輸入正確的用戶名和密碼。</p><p>  然后,當(dāng)用戶輸入正確的用戶名和密碼,用戶就成功登陸了該考試系統(tǒng)。接著就會出現(xiàn)幾個(gè)選擇項(xiàng):開始,分?jǐn)?shù),考試規(guī)則,離開。考生應(yīng)該首先閱覽以下考試規(guī)則,接著點(diǎn)擊開始進(jìn)入考試,當(dāng)考試結(jié)束后,選擇提交試卷。然后點(diǎn)擊分?jǐn)?shù)就可以得到自己的考試分?jǐn)?shù)了。然后就可以離開該考試系統(tǒng)了。</p><p>  之后,當(dāng)用戶進(jìn)入考試,考試框的上邊依次是考生姓名、編號、

90、考試時(shí)間等。中間是考試題目,先邊有考試時(shí)間倒計(jì)時(shí)。還有幾個(gè)選擇鈕,依次是上一題,下一題以及提交試卷??忌筛鶕?jù)自己需求進(jìn)行操作,最終提交試卷。如果考生在倒計(jì)時(shí)時(shí)間之內(nèi)未完成作答的,系統(tǒng)會自動提交試卷。</p><p>  考生在提交試卷后,系統(tǒng)會對用戶的作答給出分?jǐn)?shù)。用戶提交試卷的同時(shí)系統(tǒng)會將用戶的分?jǐn)?shù)呈現(xiàn)在該用戶面前。考試完成。</p><p>  最后,考生點(diǎn)擊離開,離開考試系統(tǒng)。&l

91、t;/p><p>  以下是一流程圖的形式進(jìn)一步說明以上過程。 </p><p><b>  4-2服務(wù)器流程圖</b></p><p><b>  4-3客戶端流程圖</b></p><p>  4.7系統(tǒng)運(yùn)行圖以及主要的實(shí)現(xiàn)代碼</p><p><b>

92、  4-4登陸界面</b></p><p><b>  4-5進(jìn)入考試系統(tǒng)</b></p><p><b>  4-6考試界面</b></p><p>  4-7點(diǎn)擊交卷之后,成績自動生成</p><p>  主要的實(shí)現(xiàn)代碼如下:</p><p><b>

93、;  登錄流程</b></p><p><b>  2.考試流程</b></p><p><b>  3.開始考試倒計(jì)時(shí)</b></p><p><b>  4.查詢考分流程</b></p><p><b>  5.退出流程</b></p

94、><p>  6.點(diǎn)擊下一步按鈕所執(zhí)行的方法</p><p><b>  7.交卷流程</b></p><p><b>  8.考試結(jié)束</b></p><p><b>  4.8小結(jié)</b></p><p>  本章主要介紹了系統(tǒng)的詳細(xì)設(shè)計(jì)以及具體流程。系

95、統(tǒng)用到的主要類,以及類的屬性。緊接著通過系統(tǒng)的主框架為引導(dǎo)詳細(xì)說明了系統(tǒng)的運(yùn)行過程。</p><p><b>  第五章總結(jié)與展望</b></p><p><b>  5.1工作總結(jié)</b></p><p>  經(jīng)過近半年的不懈努力,我通過查閱各種資料,以及尋求別人的幫助,終于完成了這個(gè)在線考試系統(tǒng)的設(shè)計(jì)。系統(tǒng)完成后,基

96、本能實(shí)現(xiàn)預(yù)期功能。在這個(gè)系統(tǒng)的設(shè)計(jì)過程中讓我更熟悉JAVA這一開發(fā)語言,增加了自己的開發(fā)經(jīng)驗(yàn)。</p><p>  首先,選擇這個(gè)題目是因?yàn)楝F(xiàn)在互聯(lián)網(wǎng)越來越發(fā)達(dá),在線教育也越來越繁榮。再加上現(xiàn)在的紙質(zhì)考試存在著諸多弊端。在線考試已經(jīng)成為一種潮流,正不斷受到人們的認(rèn)可。而且在線考試節(jié)省人力、物力。所以我就選擇了這個(gè)設(shè)計(jì)。</p><p>  接下來,我就查閱各種資料來完善JAVA方面的知識,

97、并能夠?yàn)樵撓到y(tǒng)的開發(fā)設(shè)計(jì)服務(wù)。然后,對該系統(tǒng)的功能進(jìn)行構(gòu)想。首先,考生能夠通過一定的賬號密碼登錄該系統(tǒng);然后,能夠成功進(jìn)行考試,提交試卷并獲得得分。接著,完善系統(tǒng)功能,增加考試規(guī)則,計(jì)時(shí)等功能。這能夠讓用戶感覺更加人性化,從而更能接受該在線考試系統(tǒng)。最后根據(jù)功能編寫程序。</p><p>  然后,根據(jù)功能便攜框架,對各個(gè)類進(jìn)行聯(lián)系。使系統(tǒng)能夠順利的運(yùn)行,為系統(tǒng)的成功設(shè)計(jì)做好鋪墊。最后就是完成程序,構(gòu)成系統(tǒng),糾錯(cuò)

98、,系統(tǒng)完善。</p><p>  通過以上的各個(gè)步驟,我對系統(tǒng)開發(fā)有了更深刻的了解。為以后的學(xué)習(xí)生活打下堅(jiān)實(shí)的基礎(chǔ)。在這個(gè)系統(tǒng)的設(shè)計(jì)過程中,我不但更加了解JAVA,更能以這個(gè)平臺進(jìn)行實(shí)際設(shè)計(jì)。雖然在開發(fā)的過程中出現(xiàn)了些許錯(cuò)誤,但通過老師的精心指導(dǎo),都一一解決了。在這里謝謝老師和在開發(fā)過程中幫助過我的人。</p><p><b>  5.2后續(xù)工作展望</b></

99、p><p>  這個(gè)系統(tǒng)還能夠添加更多功能,比如試題的更多分類,增加自測平臺。讓該考試系統(tǒng)無論在正式考試或者日常訓(xùn)練中都能夠出現(xiàn)在人們的生活中。幫助更多的人們學(xué)習(xí)和更了解生活。</p><p><b>  致謝</b></p><p>  畢業(yè)設(shè)計(jì)作為一個(gè)平臺來展示我們大學(xué)四年的學(xué)習(xí)情況,并能夠充分展現(xiàn)個(gè)人的邏輯思維以及動手能力。充分調(diào)用某一門或者

100、多門的功課來實(shí)現(xiàn)個(gè)人的設(shè)計(jì)。這能夠考驗(yàn)自我的學(xué)習(xí)能力,能夠不斷超越自我。</p><p>  作為本文的在線考試系統(tǒng)這一基于JAVA的開發(fā)系統(tǒng),我為了實(shí)現(xiàn)功能構(gòu)想以及程序編寫,查閱了不少資料。在老師和同學(xué)們的幫助下成功完成設(shè)計(jì),在某種程度上加強(qiáng)了自我的實(shí)踐能力。為以后的工作積累經(jīng)驗(yàn)。</p><p>  本次設(shè)計(jì)中功能實(shí)現(xiàn)上出現(xiàn)了不少技術(shù)上的問題。鑒于個(gè)人經(jīng)驗(yàn)不足,尋求導(dǎo)師以及擁有開發(fā)經(jīng)驗(yàn)

101、的同學(xué)進(jìn)行修改完善。比如,系統(tǒng)種類的調(diào)用,屬性的運(yùn)用以及方法的實(shí)現(xiàn)都存在著知識面不夠完善的問題。存在著運(yùn)用錯(cuò)誤,致使系統(tǒng)存在著這樣那樣的錯(cuò)誤。再就是各個(gè)類之間的連接問題是個(gè)難題,在經(jīng)過同學(xué)的幫助下,我經(jīng)過多次跳是修改,最終完成這次畢業(yè)設(shè)計(jì)。</p><p>  在開發(fā)和調(diào)試過程中,老師的優(yōu)良作風(fēng)對我有了深刻的影響。令我對待工作學(xué)習(xí)的態(tài)度發(fā)生了質(zhì)的飛躍。是我養(yǎng)成了嚴(yán)肅認(rèn)真,一絲不茍的工作作風(fēng),并樹立了正確的生產(chǎn)觀、

102、經(jīng)濟(jì)觀和全局觀。</p><p>  通過此次畢業(yè)設(shè)計(jì),希望我能把所學(xué)的只是充分聯(lián)系起來,培養(yǎng)自己分析問題、解決問題的能力。不斷充實(shí)自我,為以后的工作做好鋪墊。</p><p>  最后,對老師的精心指導(dǎo)和悉心培育表示由衷的感謝。</p><p><b>  參考文獻(xiàn):</b></p><p>  **本科畢業(yè)設(shè)計(jì)(論文

103、)管理暫行規(guī)定</p><p>  畢業(yè)設(shè)計(jì)(論文)是本科人才培養(yǎng)的重要實(shí)踐性教學(xué)環(huán)節(jié),也是學(xué)士學(xué)位評定的重要依據(jù)。為了切實(shí)做好我校的畢業(yè)設(shè)計(jì)(論文)工作,規(guī)范畢業(yè)設(shè)計(jì)(論文)工作的管理,提高畢業(yè)設(shè)計(jì)(論文)的質(zhì)量,特制定本規(guī)定。</p><p>  一、畢業(yè)設(shè)計(jì)(論文)的主要目的</p><p>  (一)培養(yǎng)學(xué)生運(yùn)用所學(xué)知識獨(dú)立地分析和解決本專業(yè)范圍內(nèi)一般問題的

104、能力,培養(yǎng)學(xué)生的創(chuàng)新意識和實(shí)踐能力,使學(xué)生從事學(xué)術(shù)研究的能力得到初步的訓(xùn)練;</p><p> ?。ǘ┡囵B(yǎng)學(xué)生理論聯(lián)系實(shí)際的工作作風(fēng)和嚴(yán)謹(jǐn)認(rèn)真的科學(xué)態(tài)度;</p><p> ?。ㄈ┡囵B(yǎng)學(xué)生分析設(shè)計(jì)能力、研究實(shí)驗(yàn)?zāi)芰Α⒐こ虒?shí)踐能力、經(jīng)濟(jì)分析能力、外文閱讀能力和計(jì)算機(jī)的運(yùn)用能力,以及社會調(diào)查、文獻(xiàn)資料查閱和論文寫作能力。</p><p>  二、畢業(yè)設(shè)計(jì)(論文)的基

105、本要求</p><p>  (一)按照各專業(yè)“畢業(yè)設(shè)計(jì)(論文)教學(xué)大綱”的要求進(jìn)行;</p><p> ?。ǘ┮哂袑W(xué)術(shù)性,要對自然科學(xué)或社會科學(xué)內(nèi)某一領(lǐng)域進(jìn)行專門、系統(tǒng)的研究,并表達(dá)其研究成果;</p><p> ?。ㄈ┮哂袆?chuàng)見性,要對學(xué)術(shù)或工程的某個(gè)問題有新的發(fā)現(xiàn)、新的構(gòu)想或新的發(fā)展和完善;</p><p> ?。ㄋ模┮哂锌茖W(xué)性,

106、要求論述系統(tǒng)而完整,首尾一貫而不前后矛盾,實(shí)事求是而不主觀臆造;</p><p> ?。ㄎ澹┮邞?yīng)用性,要能解決生產(chǎn)實(shí)際問題,在技術(shù)改造、生產(chǎn)管理等通過方面有所創(chuàng)造;</p><p> ?。?yīng)做到觀點(diǎn)正確、論據(jù)充分、推理嚴(yán)密、計(jì)算準(zhǔn)確,層次分明、條理清楚、語言精煉,有必要的圖表和相關(guān)資料等;</p><p> ?。ㄆ撸?yīng)參閱一定數(shù)量的外文資料,并要求在畢業(yè)設(shè)計(jì)(

107、論文)中反映出來。</p><p>  三、畢業(yè)設(shè)計(jì)(論文)的工作程序</p><p>  畢業(yè)設(shè)計(jì)(論文)工作程序分為選題、開題、撰寫論文或設(shè)計(jì)、中期檢查、答辯、歸檔等環(huán)節(jié)。</p><p>  四、畢業(yè)設(shè)計(jì)(論文)的時(shí)間安排</p><p>  畢業(yè)設(shè)計(jì)(論文)工作時(shí)間為8~12周,時(shí)間安排應(yīng)按**本科生畢業(yè)設(shè)計(jì)(論文)工作流程執(zhí)行,集中

108、用于畢業(yè)設(shè)計(jì)(論文)的時(shí)間不得少于專業(yè)培養(yǎng)計(jì)劃規(guī)定的周數(shù)。</p><p>  五、畢業(yè)設(shè)計(jì)(論文)的領(lǐng)導(dǎo)與管理</p><p>  全校畢業(yè)設(shè)計(jì)(論文)在分管教學(xué)副校長領(lǐng)導(dǎo)下進(jìn)行,分級管理,層層負(fù)責(zé)。</p><p>  (一)教務(wù)處畢業(yè)設(shè)計(jì)(論文)管理工作職責(zé):</p><p>  1、匯總各院(部)畢業(yè)設(shè)計(jì)(論文)題目和指導(dǎo)教師安排,協(xié)

109、調(diào)有關(guān)問題;</p><p>  2、做好畢業(yè)設(shè)計(jì)(論文)前期、中期、后期檢查工作,對未達(dá)到各階段進(jìn)度、質(zhì)量要求或違反有關(guān)規(guī)定的院(部)提出整改要求;</p><p>  3、開展學(xué)校畢業(yè)設(shè)計(jì)(論文)工作評估和研究工作。</p><p>  (二)院(部)畢業(yè)設(shè)計(jì)(論文)管理工作職責(zé):</p><p>  各院(部)成立畢業(yè)設(shè)計(jì)(論文)工作領(lǐng)

110、導(dǎo)小組,確定畢業(yè)設(shè)計(jì)(論文)指導(dǎo)教師,布置畢業(yè)設(shè)計(jì)(論文)工作任務(wù),檢查本院(部)畢業(yè)設(shè)計(jì)(論文)工作落實(shí)情況。院(部)畢業(yè)設(shè)計(jì)(論文)管理工作職責(zé)為: </p><p>  1、審查畢業(yè)設(shè)計(jì)(論文)選題、下達(dá)任務(wù)書,安排指導(dǎo)教師,布置畢業(yè)設(shè)計(jì)(論文)有關(guān)工作;</p><p>  2、定期檢查畢業(yè)設(shè)計(jì)(論文)工作進(jìn)展情況,協(xié)調(diào)處理畢業(yè)設(shè)計(jì)(論文)中的有關(guān)問題,督促檢查指導(dǎo)教師的工作;&l

111、t;/p><p>  3、對學(xué)生畢業(yè)設(shè)計(jì)(論文)按規(guī)范化要求進(jìn)行形式審查,組織畢業(yè)設(shè)計(jì)(論文)答辯和成績評定工作。對答辯小組提出的優(yōu)秀的畢業(yè)設(shè)計(jì)(論文)及評閱答辯中有爭議的畢業(yè)設(shè)計(jì)(論文),組織答辯委員會進(jìn)行復(fù)議,最終確定成績;</p><p>  4、按學(xué)校有關(guān)要求,保存與畢業(yè)設(shè)計(jì)(論文)有關(guān)的電子和紙質(zhì)文檔;</p><p>  5、做好本院(部)學(xué)生畢業(yè)設(shè)計(jì)(論文

112、)總結(jié)與評估工作。</p><p> ?。ㄈ┊厴I(yè)設(shè)計(jì)(論文)指導(dǎo)教師職責(zé):</p><p>  1、指導(dǎo)學(xué)生選題,擬定任務(wù)書,安排學(xué)生做開題報(bào)告,編寫指導(dǎo)方案,制定計(jì)劃和工作程序;</p><p>  2、對學(xué)生提出具體要求,指定主要參考資料和社會調(diào)查內(nèi)容,規(guī)定學(xué)生應(yīng)完成的查閱中外文資料、文獻(xiàn)綜述、開題報(bào)告、各項(xiàng)實(shí)驗(yàn)數(shù)據(jù)、計(jì)算工作(包括上機(jī))、設(shè)計(jì)(論文)等;&l

113、t;/p><p>  3、采取多種方式檢查學(xué)生的工作進(jìn)度和工作質(zhì)量,及時(shí)解答和處理學(xué)生提出的有關(guān)問題,并認(rèn)真填寫畢業(yè)設(shè)計(jì)(論文)指導(dǎo)記錄表;</p><p>  4、做好學(xué)生外文翻譯的評閱工作,指導(dǎo)學(xué)生按規(guī)范要求正確撰寫畢業(yè)設(shè)計(jì)(論文);</p><p>  5、在學(xué)生答辯前對畢業(yè)設(shè)計(jì)(論文)(包括設(shè)計(jì)說明書、計(jì)算資料、實(shí)驗(yàn)報(bào)告、圖紙或論文等)進(jìn)行審查,認(rèn)真填寫畢業(yè)設(shè)計(jì)

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論