基于Java的在線考試系統(tǒng)課程設(shè)計(jì)說(shuō)明書_第1頁(yè)
基于Java的在線考試系統(tǒng)課程設(shè)計(jì)說(shuō)明書_第2頁(yè)
基于Java的在線考試系統(tǒng)課程設(shè)計(jì)說(shuō)明書_第3頁(yè)
基于Java的在線考試系統(tǒng)課程設(shè)計(jì)說(shuō)明書_第4頁(yè)
基于Java的在線考試系統(tǒng)課程設(shè)計(jì)說(shuō)明書_第5頁(yè)
已閱讀5頁(yè),還剩25頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上操作系統(tǒng)課程設(shè)計(jì)設(shè)計(jì)并實(shí)現(xiàn)在線考試系統(tǒng)學(xué)院:信息科學(xué)與工程學(xué)院專業(yè):軟件工程一、前臺(tái)界面設(shè)計(jì)1、用戶注冊(cè)、登錄界面圖 用戶注冊(cè)界面用戶注冊(cè)界面如上圖所示,下面是各項(xiàng)需填寫內(nèi)容的功能:用戶名:標(biāo)示用戶在線身份,可以為真實(shí)姓名,也可為化名,不同用戶可以具有相同的用戶名。郵箱:用于用戶接受系統(tǒng)消息,如用戶忘記密碼時(shí),可以將密碼通過(guò)郵件發(fā)送給用戶。每個(gè)用戶的郵箱地址必須是特有的,如果一個(gè)用戶想要有兩個(gè)登錄賬號(hào),必須用兩個(gè)不同的郵箱地址。如果某個(gè)郵箱地址再次被用來(lái)注冊(cè),給出提示。設(shè)置密碼:用戶登錄所用密碼。確認(rèn)密碼:用戶需再次輸入密碼,以確認(rèn)上次輸入內(nèi)容。如果兩次輸入密碼不相同

2、,給出提示。性別:針對(duì)部分用戶需求而設(shè)定。如:老師在對(duì)學(xué)生進(jìn)行測(cè)試時(shí),便于核對(duì)學(xué)生信息。圖 用戶登錄界面用戶登錄界面如上圖所示,下面是各項(xiàng)需填寫內(nèi)容的功能:郵箱:用戶注冊(cè)時(shí)所填寫的郵箱,用于標(biāo)識(shí)用戶身份。密碼:用戶最近一次所設(shè)置的密碼,用于驗(yàn)證用戶身份。記住密碼:用于記錄用戶登錄狀態(tài),若選中此項(xiàng),下次用戶登錄時(shí)系統(tǒng)會(huì)自動(dòng)啟動(dòng)到用戶登錄狀態(tài)。忘記密碼:若用戶忘記登錄密碼,可點(diǎn)擊此鏈接,跳轉(zhuǎn)到用戶注冊(cè)郵箱接收郵件,郵件中包含用戶最近一次設(shè)置密碼。2、歡迎界面歡迎界面分兩種形式:一種為未注冊(cè)用戶歡迎界面,另一種為已注冊(cè)用戶歡迎界面,效果圖如下所示:圖 未注冊(cè)用戶歡迎界面頁(yè)面內(nèi)容介紹如下:窗口名稱為“

3、XXX在線測(cè)試系統(tǒng)”。用戶點(diǎn)擊“注冊(cè)”或“登錄”按鈕可彈出注冊(cè)窗口或登錄窗口,供用戶注冊(cè)或登錄。窗口中間部分內(nèi)容為關(guān)于系統(tǒng)的介紹性文字。用戶點(diǎn)擊“立即進(jìn)入”按鈕后進(jìn)入“題目列表”窗口(“題目列表”窗口設(shè)計(jì)見(jiàn)后面內(nèi)容)。圖 已注冊(cè)用戶歡迎界面頁(yè)面內(nèi)容介紹如下:已注冊(cè)用戶歡迎界面與未注冊(cè)用戶歡迎界面基本相同,不同之處在于沒(méi)有“注冊(cè)”、“登錄”按鈕,而添加了用戶菜單,菜單起初僅顯示用戶名,當(dāng)鼠標(biāo)指向時(shí),顯示二級(jí)菜單,分別為“賬戶管理”、“個(gè)人資料”、“退出登錄”。菜單功能如下:賬戶管理:進(jìn)入用戶賬戶管理界面,比如用戶可在此修改登錄密碼、查看歷史測(cè)試成績(jī)等。詳細(xì)設(shè)計(jì)參見(jiàn)后面內(nèi)容。個(gè)人資料:用戶可在此完

4、善個(gè)人資料。退出登錄:退出登錄狀態(tài),以未登錄狀態(tài)在線。3、題目列表題目列表界面分兩種形式:一種為未注冊(cè)用戶歡迎界面,另一種為已注冊(cè)用戶歡迎界面,效果圖如下所示:圖 未注冊(cè)用戶題目列表界面未登錄用戶(包括未注冊(cè)用戶和已注冊(cè)但未登錄用戶)進(jìn)入題目列表界面后,首先陳列的是題目類型,即題目所屬的相關(guān)領(lǐng)域。當(dāng)用戶點(diǎn)擊某一題目類型后,向下彈出所有此類型的題目列表。每條題目包括標(biāo)題、上傳人、上傳時(shí)間。圖 已注冊(cè)用戶題目列表界面已登錄用戶的題目列表界面與未登錄用戶的相似,不同之處除了顯示用戶名外,在每個(gè)題目類型的后面有一個(gè)“上傳”按鈕,用戶可點(diǎn)擊此按鈕添加此類型的題目。4、在線測(cè)試界面在線測(cè)試界面有多個(gè),包括

5、題目部分和測(cè)試結(jié)果部分。每一套題目都由10個(gè)單項(xiàng)選擇題組成,用戶必須按順序答題,答完全部題目后方可提交。用戶在答題過(guò)程中可自行取消本次答題。若由于某些客觀原因程序異常退出,系統(tǒng)可對(duì)用戶答題情況進(jìn)行備份,下次登錄時(shí)用戶可繼續(xù)上次答題記錄進(jìn)行答題(此項(xiàng)功能對(duì)未登錄用戶無(wú)效)。下面是詳細(xì)設(shè)計(jì):圖 第一題界面圖中內(nèi)容區(qū)左上角為題目類型,此處為“Photoshop”類,內(nèi)容區(qū)右上角為當(dāng)前題號(hào),中間部分為題目和選項(xiàng)。內(nèi)容區(qū)左下角為“上一題”按鈕,因?yàn)榇颂帪榈谝活},所以此按鈕為不可用狀態(tài)。內(nèi)容區(qū)右下角為“下一題”按鈕,點(diǎn)擊跳轉(zhuǎn)到下一個(gè)題目,只有用戶對(duì)當(dāng)前題目做出選擇后,此按鈕才顯示為可用狀態(tài)。窗口右上角為用

6、戶菜單,點(diǎn)擊“返回”可取消本次答題。若為已登錄用戶,則顯示用戶名。圖 中間題目界面此界面與第一題界面幾乎相同,不同之處在于“上一題”按鈕變?yōu)榭捎脿顟B(tài)。圖 最后一題界面此界面與前面兩個(gè)界面幾乎相同。不同之處在于已經(jīng)沒(méi)有“下一題”按鈕,用戶可點(diǎn)擊“完成”按鈕進(jìn)行提交。圖 測(cè)試結(jié)果界面此界面顯示用戶答題結(jié)果,包括正確率和每個(gè)題的對(duì)錯(cuò)情況。當(dāng)鼠標(biāo)點(diǎn)擊題目時(shí),可彈出窗口顯示原題供用戶回顧。顯示原題窗口如下所示:圖 原題顯示窗口其中,正確答案應(yīng)加粗顯示。若為用戶打錯(cuò)的題目,則選錯(cuò)的選項(xiàng)應(yīng)特別標(biāo)出。二、已登錄用戶權(quán)限界面設(shè)計(jì)1、用戶賬戶管理圖 用戶賬戶管理界面用戶對(duì)賬戶的管理功能主要有三項(xiàng):修改密碼、查看題

7、庫(kù)、查看歷史成績(jī)。用戶點(diǎn)擊三個(gè)按鈕其中之一,就會(huì)進(jìn)入各項(xiàng)管理界面。詳細(xì)設(shè)計(jì)如下:圖 用戶修改密碼界面此處為用戶提供修改登錄密碼功能,而且必須在用戶登錄的前提下。如果用戶忘記了登錄密碼,可點(diǎn)擊“忘記當(dāng)前密碼?”尋回。圖 題庫(kù)查看界面用戶可在此查看自己上傳過(guò)的所有題目,并可對(duì)其進(jìn)行修改或刪除。用戶還可以通過(guò)“上傳”按鈕進(jìn)行新題目上傳。圖 題目上傳界面題目標(biāo)題可自行填寫,題目類型可以從已有列表中選擇,也可自行添加。問(wèn)題、選項(xiàng)內(nèi)容自行填寫,正確答案只能為A、B、C、D其中之一。上傳時(shí)間系統(tǒng)自動(dòng)設(shè)置。點(diǎn)擊“保存”按鈕可將題目提交到系統(tǒng)數(shù)據(jù)庫(kù),并能在題目列表中顯示,供其他用戶進(jìn)行測(cè)試。圖 歷史成績(jī)界面用戶

8、可在此查看自己所獲得的所有成績(jī),可根據(jù)需求對(duì)部分記錄進(jìn)行刪除。2、個(gè)人資料圖 用戶個(gè)人資料界面用戶可以在此修改用戶名、郵箱、性別,并添加簡(jiǎn)單的個(gè)人介紹,以便其他用戶查看。圖 個(gè)人資料顯示界面當(dāng)某用戶查看其他用戶資料時(shí),顯示內(nèi)容如圖。三、系統(tǒng)管理員權(quán)限界面設(shè)計(jì)1、管理員登錄界面設(shè)計(jì)圖 管理員登錄界面管理員登錄界面如上圖所示,同用戶一樣,通過(guò)郵箱尋回密碼。2、管理系統(tǒng)首頁(yè)設(shè)計(jì)圖 系統(tǒng)管理首頁(yè)管理員登錄后的首頁(yè),僅是一個(gè)內(nèi)容顯示界面,沒(méi)有功能。3、用戶管理界面設(shè)計(jì)圖 用戶管理界面系統(tǒng)管理員可在此處對(duì)用戶進(jìn)行管理。可管理的用戶信息包括用戶名、郵箱、密碼、性別、個(gè)人簡(jiǎn)介,管理員操作的最小單位為一條記錄,

9、且只能對(duì)用戶進(jìn)行刪除操作,無(wú)權(quán)限修改用戶的個(gè)人信息。4、題型管理界面設(shè)計(jì)圖 題型管理界面管理員在此處對(duì)題型進(jìn)行管理,題型包括名稱和數(shù)量?jī)身?xiàng)屬性,管理員可以定期刪除題目數(shù)量為0的題型。5、題目管理界面設(shè)計(jì)圖 題目管理界面管理員可在此處對(duì)題目進(jìn)行管理,題目屬性包括名稱、上傳人、上傳時(shí)間、所屬類型。管理員操作的最小單位為每一套題目,且只能進(jìn)行刪除操作。6、管理員個(gè)人資料管理界面設(shè)計(jì)圖 管理員個(gè)人資料管理界面管理員在此對(duì)自己的個(gè)人信息進(jìn)行管理。用戶名不可變,昵稱可針對(duì)不同的系統(tǒng)管理員而改變,郵箱必填,以接收系統(tǒng)消息,如找回密碼等。如要修改登錄密碼,可通過(guò)框內(nèi)兩項(xiàng)修改,否則此兩項(xiàng)留空。四、設(shè)計(jì)總結(jié)在本次

10、課程設(shè)計(jì)中,我負(fù)責(zé)整個(gè)系統(tǒng)的流程、界面設(shè)計(jì)。設(shè)計(jì)時(shí),我將重點(diǎn)放在系統(tǒng)功能上,只想著怎樣將系統(tǒng)的功能完全的、有條理的表現(xiàn)出來(lái),忽視了用戶體驗(yàn)這一方面的考慮。直到我們做測(cè)試時(shí),我才發(fā)現(xiàn)存在很多問(wèn)題。比如,用戶在進(jìn)入測(cè)試之后,就只能一路走到底,不能返回,這是一個(gè)非常嚴(yán)重的錯(cuò)誤。如果在加一個(gè)返回按鈕的話,那么整個(gè)系統(tǒng)的流程控制要有非常大的變動(dòng),由于時(shí)間緊張,最終還是沒(méi)能做出修改。而且,我們用了Java原帶的界面控件,沒(méi)有加自己的素材,這使我們的真?zhèn)€系統(tǒng)看起來(lái)只是一個(gè)練習(xí),而不是一個(gè)產(chǎn)品。雖然缺陷非常多,但在設(shè)計(jì)的過(guò)程中還是有很多的收獲。整個(gè)系統(tǒng)從最初的一個(gè)想法,到簡(jiǎn)單的模型,再到詳細(xì)的設(shè)計(jì),置身在這個(gè)

11、過(guò)程中,有過(guò)迷茫與困惑,但最終都堅(jiān)持過(guò)來(lái)了,心中有一些小小的成就感。在這個(gè)過(guò)程中,我始終都以積極的姿態(tài)投入,并不是以一個(gè)“旁觀者”的姿態(tài)來(lái)應(yīng)付一個(gè)課程設(shè)計(jì)。期間,有人向我們提出質(zhì)疑:從無(wú)到有的搭起一個(gè)系統(tǒng)框架并不容易,更何況還要加好多功能。而且,我們?nèi)齻€(gè)的編碼能力并不是很強(qiáng),當(dāng)初我也懷疑過(guò),我們到底能做到什么程度。雖然心中非常沒(méi)底,但還是表現(xiàn)出樂(lè)觀的態(tài)度,因?yàn)榍榫w是會(huì)感染人的,積極的態(tài)度會(huì)使旁邊的人也變得積極。只要我們真的想做、認(rèn)真做,就一定能學(xué)到自己想要的東西,與結(jié)果相比,過(guò)程更重要。懷著積極的心態(tài),我們?nèi)齻€(gè)齊心協(xié)力,最終實(shí)現(xiàn)了最主要的功能。我想,我之所以能堅(jiān)持下來(lái),最重要的是老師和同學(xué)的幫

12、助。老師在整個(gè)過(guò)程中的細(xì)心指導(dǎo),使我們始終保持向前的姿態(tài);其他兩名同學(xué)的積極態(tài)度,使我能保持一份必勝的信心。我知道,我還差的很遠(yuǎn),需要繼續(xù)更加努力的學(xué)習(xí)、實(shí)踐。我會(huì)奮力向前,總有一天做到心中的那個(gè)自己。. 數(shù)據(jù)庫(kù)設(shè)計(jì)在對(duì)數(shù)據(jù)庫(kù)進(jìn)行分析設(shè)計(jì)時(shí),應(yīng)按照數(shù)據(jù)規(guī)范化理論的設(shè)計(jì),盡量減少冗余數(shù)據(jù),以確保數(shù)據(jù)完整性,統(tǒng)一性。在數(shù)據(jù)庫(kù)基本設(shè)計(jì)原則的指導(dǎo)下,數(shù)據(jù)庫(kù)設(shè)計(jì)重點(diǎn)應(yīng)考慮下列因素:1數(shù)據(jù)庫(kù)表設(shè)計(jì)必須布局合理,層次分明。2數(shù)據(jù)庫(kù)必須高度結(jié)構(gòu)化,保證數(shù)據(jù)的結(jié)構(gòu)化,規(guī)范化和標(biāo)準(zhǔn)化,這是建立數(shù)據(jù)庫(kù)和進(jìn)行信息交換的基礎(chǔ)。數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)應(yīng)該遵循國(guó)家標(biāo)準(zhǔn)和行業(yè)標(biāo)準(zhǔn),尤其要重視編碼的應(yīng)用。3數(shù)據(jù)庫(kù)設(shè)計(jì)的時(shí)候,一方面要盡

13、可能地減小數(shù)據(jù)冗余,減小存儲(chǔ)空間降低數(shù)據(jù)一致性問(wèn)題發(fā)生的可能性,另一方面,還要考慮適當(dāng)?shù)臄?shù)據(jù)冗余,以降低程序開(kāi)發(fā)難度。4數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí)應(yīng)保持?jǐn)?shù)據(jù)庫(kù)中數(shù)據(jù)的準(zhǔn)確性和統(tǒng)一性。在系統(tǒng)中,多個(gè)用戶同時(shí)操作數(shù)據(jù)庫(kù)中的共享數(shù)據(jù),就會(huì)可能影響到數(shù)據(jù)庫(kù)數(shù)據(jù)的一致性產(chǎn)生錯(cuò)誤,因此必須使用“鎖”等方法來(lái)確保數(shù)據(jù)庫(kù)中數(shù)據(jù)的一致性。5數(shù)據(jù)庫(kù)設(shè)計(jì)的時(shí)候,對(duì)于數(shù)據(jù)庫(kù)中的保密數(shù)據(jù)還必須設(shè)計(jì)一些安全機(jī)制來(lái)確保數(shù)據(jù)苦的安全。在數(shù)據(jù)庫(kù)設(shè)計(jì)實(shí)際的過(guò)程中,確定數(shù)據(jù)庫(kù)的結(jié)構(gòu)設(shè)計(jì)是否合理的,主要是依據(jù)數(shù)據(jù)庫(kù)中是否有以下特點(diǎn):1數(shù)據(jù)庫(kù)是否具有一定的靈活性、適應(yīng)性和可移植性;2數(shù)據(jù)庫(kù)是否具有與其系統(tǒng)的兼容性;3數(shù)據(jù)庫(kù)是否具有對(duì)新環(huán)境的可改變性

14、;4數(shù)據(jù)庫(kù)的存儲(chǔ)成本是否夠低;5數(shù)據(jù)庫(kù)的設(shè)計(jì)是否有利于系統(tǒng)的實(shí)現(xiàn);6是否具有良好的數(shù)據(jù)庫(kù)結(jié)構(gòu),易于維護(hù),易于理解,效率較高。作為一個(gè)具有一定應(yīng)用價(jià)值的在線考試系統(tǒng)的數(shù)據(jù)庫(kù),就要求數(shù)據(jù)庫(kù)設(shè)計(jì)人員設(shè)計(jì)出一個(gè)好的結(jié)構(gòu),減少數(shù)據(jù)庫(kù)數(shù)據(jù)的冗余的產(chǎn)生。下面就介紹在線考試系統(tǒng)的數(shù)據(jù)庫(kù)是如何設(shè)計(jì)的。該系統(tǒng)選用數(shù)據(jù)庫(kù)MySQLMySQL是一種開(kāi)放源代碼的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),它與其他大型的數(shù)據(jù)庫(kù)例如SQLServer、Oracle相比,MySQL有著其自身的一些缺點(diǎn),例如功能相對(duì)簡(jiǎn)單、數(shù)據(jù)庫(kù)規(guī)模較小等,但這卻一點(diǎn)都沒(méi)有影響到它受中小型企業(yè)和一般的個(gè)人使用者歡迎的程度,因?yàn)镸ySQL提供的功能已經(jīng)對(duì)他們來(lái)說(shuō)已經(jīng)夠

15、用了,同時(shí)因?yàn)镸ySQL是一個(gè)開(kāi)源數(shù)據(jù)庫(kù),所以可以大大減少系統(tǒng)成本。MySQL數(shù)據(jù)庫(kù)的主要功能只在組織和管理很龐大或復(fù)雜的信息和基于WEB的庫(kù)存查詢請(qǐng)求不僅僅為客戶提供信息,而且還可以為您自己使用數(shù)據(jù)庫(kù)可以提供如下功能: (1)減少記錄編檔的時(shí)間 (2)減小記錄檢索時(shí)間 (3)靈活的查找序列 (4)靈活的輸出格式 (5)多個(gè)用戶同時(shí)訪問(wèn)記錄1、數(shù)據(jù)庫(kù)需求分析 需求分析是設(shè)計(jì)數(shù)據(jù)庫(kù)的起點(diǎn),需求分析的結(jié)果是否準(zhǔn)確地反映了用戶的實(shí)際要求,將直接影響到后面各個(gè)階段的設(shè)計(jì),并影響到設(shè)計(jì)結(jié)果是否合理和實(shí)用。根據(jù)分析,該系統(tǒng)主要涉及到幾種信息的存儲(chǔ),管理員信息的存儲(chǔ),用戶信息的存儲(chǔ),試卷信息的存儲(chǔ)。所以該系

16、統(tǒng)需要建立管理員信息表,用戶信息表,題庫(kù)信息表,試卷類型表、試卷表,成績(jī)表。2、數(shù)據(jù)庫(kù)概要設(shè)計(jì)概念設(shè)計(jì)階段主要是將需求分析階段得到的用戶需求抽象為信息結(jié)構(gòu)(概念模型)的過(guò)程,它是整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)的關(guān)鍵。根據(jù)數(shù)據(jù)庫(kù)需求給出該系統(tǒng)的E-R圖3、 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì)完畢以后,現(xiàn)在可以將上面的數(shù)據(jù)庫(kù)概念結(jié)構(gòu)轉(zhuǎn)化為某種數(shù)據(jù)庫(kù)系統(tǒng)所支持的實(shí)際數(shù)據(jù)模型,也就是數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)。下面就要設(shè)計(jì)在線考試系統(tǒng)數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)。以概念結(jié)構(gòu)設(shè)計(jì)中的E-R圖為主要依據(jù)使用powerdesign設(shè)計(jì)出該系統(tǒng)的關(guān)系模式,該系統(tǒng)的數(shù)據(jù)庫(kù)邏輯概念關(guān)系模型圖如下圖4.7邏輯概念關(guān)系模型圖4、數(shù)據(jù)庫(kù)表設(shè)計(jì)下面列出了

17、設(shè)計(jì)過(guò)程中所用到的數(shù)據(jù)庫(kù)表及其結(jié)構(gòu)表格名 元素 用戶信息表用戶名、郵箱(主鍵)、密碼、性別、簡(jiǎn)介 管理員信息表用戶名、郵箱、密碼 試卷類型表類型名(如操作系統(tǒng)、軟件工程等)、試卷量 題庫(kù)表類型名、試卷名(*第一套模擬試題)、上傳人、上傳時(shí)間 試卷表類型名、試卷名、題號(hào)、內(nèi)容、A|、B、C、D、答案 成績(jī)表郵箱(主鍵)、類型名、試卷名、成績(jī)表1.1 user表 t_user列名類型 長(zhǎng)度描述 usernamevarchar10用戶名字useremailvarchar20 用戶郵箱 userpasswordvarchar20用戶密碼usersexenum( 男、女)用戶性別userintroduc

18、evarchar 100用戶簡(jiǎn)介表1.2 manager表 t_manager列名類型 長(zhǎng)度描述 managernamevarchar10管理員名字emailvarchar20管理員郵箱passwordvarchar20管理員密碼表1.3 question_subject表 t_question_subject列名類型 長(zhǎng)度描述subjectnamevarchar20類型名(如操作系統(tǒng)、軟件工程等)paperSumint試卷數(shù)量表1.4 questionsBase表 t_ questionsBase列名類型 長(zhǎng)度描述 subjectnamevarchar20試題類型paperNamevarch

19、ar30試卷名(*第一套模擬試題) useremailvarchar20 用戶郵箱joinTimedatetime8加入時(shí)間表1.5 Question表 t_ Question列名類型 長(zhǎng)度描述sujectnamevarchar20試題類型paperNamevarchar30試卷名(*第一套模擬試題) Questionnoint題號(hào)Contentvarchar100試題內(nèi)容Avarchar50A選項(xiàng)內(nèi)容Bvarchar50B選項(xiàng)內(nèi)容Cvarchar50C選項(xiàng)內(nèi)容Dvarchar50D選項(xiàng)內(nèi)容answervarchar50答案表1.6 degree表 Tb_degree列名類型 長(zhǎng)度描述user

20、emailvarchar20 用戶郵箱 subjectnamevarchar20試題類型paperNamevarchar 30 試卷名 degreeint 成績(jī)5、 主要代碼 public DATABASE() throws SQLException, IOException try Class.forName(com.mysql.jdbc.Driver); catch (ClassNotFoundException e) e.printStackTrace();conn = DriverManager.getConnection(jdbc:mysql:/localhost:3306/test

21、systems,root,);public java.sql.Connection conn;public void close() throws SQLException, IOException conn.close();以上為鏈接數(shù)據(jù)庫(kù)代碼。以下為個(gè)函數(shù)說(shuō)明:1、用戶注冊(cè)函數(shù):public String userRegister(String username, String email, String password,String sex, String introduce)2、用戶檢測(cè)函數(shù)public String userDetection(String useremail, S

22、tring password)3、查看所有用戶信息函數(shù):public String getalluser()4、用戶修改信息函數(shù):public void userupdate(String useremail, String password, String password1)5、管理員檢測(cè)函數(shù):public int managerDetection(String manageremail, String managerpassword)6、殺出用戶函數(shù):public void deleteuser(String email)7、請(qǐng)求試題函數(shù):public String getquestio

23、n_subject()8、請(qǐng)求試卷函數(shù):public String getpapername(String ) 9、 請(qǐng)求試卷數(shù)目函數(shù):public int getpape_sum(String s)10、增加試卷數(shù)目函數(shù):public void addsetpape_sum()11、增加科目:public void addsubject(String a1)12、上傳題目:public void addpaper( String subject,String papername, int no, String con, String a,String b, String c, String

24、d, String answer) 13、請(qǐng)求每套試卷的10道題:Public void gettest(String supjectname,String papername,String s1)14、請(qǐng)求答案:public String getanswer(String supjectname,String papername)15、設(shè)置分?jǐn)?shù):public void setdegree(String useremail,String subjectname,String papername, int degree)16、請(qǐng)求分?jǐn)?shù):public int getdegree(String us

25、eremail,String subjectname,String papername)17、減少試卷數(shù)量:public int delsetpape_sum(String s)18、刪除科目:public void delsubject(String s)19、刪除試卷:public void deletetest(String useremail,String subjectname,String papername)7、 感悟通過(guò)這次畢業(yè)設(shè)計(jì),對(duì)很多東西有了新的認(rèn)識(shí)和新的見(jiàn)解,認(rèn)識(shí)問(wèn)題的和思考解決辦法有了本質(zhì)上的進(jìn)步,特別是對(duì)一個(gè)系統(tǒng)開(kāi)發(fā)的模式有了更深的認(rèn)識(shí),對(duì)專業(yè)技能的運(yùn)用更熟練。 在

26、線考試系統(tǒng)服務(wù)器模塊詳細(xì)設(shè)計(jì)服務(wù)器模塊負(fù)責(zé)人;高秀洋。主要負(fù)責(zé)功能,客戶端、服務(wù)器端socket程序設(shè)計(jì),客戶端與服務(wù)器的通信及請(qǐng)求處理。 系統(tǒng)簡(jiǎn)介 在線考試系統(tǒng)是一款可以為某類知識(shí)群體提供知識(shí)技能測(cè)評(píng)的軟件。用戶只要下載了客戶端軟件,就可以注冊(cè)、登陸選擇某一類題目進(jìn)行答題,答題結(jié)束后系統(tǒng)保存用戶成績(jī)并返回用戶成績(jī)。 服務(wù)器模塊介紹服務(wù)器端應(yīng)用ServerSocket類設(shè)定9084端口為監(jiān)聽(tīng)端口,為每一個(gè)發(fā)出請(qǐng)求的用戶創(chuàng)建一個(gè)服務(wù)線程。服務(wù)線程根據(jù)客戶端的請(qǐng)求消息做相應(yīng)的處理??蛻舳藨?yīng)用Socket連接服務(wù)器IP和9084端口,與服務(wù)器建立連接,客戶端發(fā)送帶有約定標(biāo)識(shí)的請(qǐng)求消息,服務(wù)器程序根據(jù)

27、此特定標(biāo)識(shí)做出相應(yīng)處理。 服務(wù)器功能介紹1、用戶注冊(cè)客戶端用戶輸入個(gè)人信息及密碼,客戶端Socket程序?qū)⒋诵畔l(fā)送至服務(wù)器。此用戶的服務(wù)線程繼而將用戶注冊(cè)信息寫入數(shù)據(jù)庫(kù)。用戶登錄用戶在登陸界面輸入郵箱與密碼,客戶端Socket程序?qū)⑧]箱與密碼發(fā)送到服務(wù)器,服務(wù)器線程繼而查詢數(shù)據(jù)庫(kù),確認(rèn)此用戶是否已注冊(cè),若注冊(cè)則允許登陸,否則拒絕登陸。修改密碼用戶登錄后,修改密碼。服務(wù)器的用戶線程接收到此請(qǐng)求后將客戶端傳來(lái)的新密碼寫入數(shù)據(jù)庫(kù)代替原來(lái)的密碼。傳送試題服務(wù)器線程接收到用戶請(qǐng)求試題的信息后,開(kāi)始訪問(wèn)數(shù)據(jù)庫(kù)取出題目發(fā)送到客戶端??蛻舳私邮赵囶}并將題目寫入臨時(shí)只讀文件里,以備客戶端讀文件并將試題寫入界面

28、。試卷批閱客戶端將用戶答案?jìng)魉椭练?wù)器,服務(wù)器查詢數(shù)據(jù)庫(kù)得到正確答案并判斷用戶答案。統(tǒng)計(jì)在線用戶數(shù)量服務(wù)器維護(hù)一個(gè)全局變量NUM,用來(lái)保存在線用戶數(shù)量。每當(dāng)一個(gè)用登陸成功,ClientNum就加一,當(dāng)用戶退出,ClientNum就減一。對(duì)于多線程的服務(wù)器,程序應(yīng)互斥的訪問(wèn)ClientNum。此處使用java同步方法如下。 public synchronized static void addClientNum()int n= ClientNum;n+; ClientNum=n; public synchronized static void cutClientNum()int n= Clien

29、tNum; n-; ClientNum=n; 7、客戶端socket程序主要代碼:public class SocketClient private Socket s;private static InputStream instream;private static OutputStream outStream;private static Scanner in;private static PrintWriter out; public SocketClient() throws UnknownHostException, IOException s = new Socket(127.0.

30、0.1, 9084);instream = s.getInputStream();outStream = s.getOutputStream();in = new Scanner(instream);out = new PrintWriter(outStream, true); 8、服務(wù)器程序主要代碼如下,每接收到一個(gè)客戶端請(qǐng)求就新建一個(gè)用戶線程,有此線程響應(yīng)用戶請(qǐng)求。public class ReceiveServer public static int ClientNum=0;/在線用戶數(shù)量final int RECEIVE_PORT = 9084;/ 該服務(wù)器的端口號(hào)/receiveServer的構(gòu)造器p

溫馨提示

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

評(píng)論

0/150

提交評(píng)論