二級學(xué)院考試管理系統(tǒng)的設(shè)計與實現(xiàn)
時間:2022-01-14 08:52:28
導(dǎo)語:二級學(xué)院考試管理系統(tǒng)的設(shè)計與實現(xiàn)一文來源于網(wǎng)友上傳,不代表本站觀點,若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。
【摘要】各高校辦學(xué)規(guī)模日益擴大,教學(xué)資源日趨緊張,教務(wù)工作的管理難度也大大增加,設(shè)計實現(xiàn)一套考試管理系統(tǒng)是普通高校二級教務(wù)管理信息化的迫切需要。目前國內(nèi)已有的專做教務(wù)系統(tǒng)的分別有上海樹維、浙大正方、湖南強智等5家公司。但是針對二級學(xué)院的考試管理系統(tǒng)卻少之又少。該系統(tǒng)主要采用大型的數(shù)據(jù)庫oracle、JSP技術(shù)以及Java語言等工具,采用目前熱門的MVC設(shè)計模式,實現(xiàn)基于B/S交互模式的web項目。方便學(xué)生及教師隨時隨地登錄系統(tǒng)查詢信息。該系統(tǒng)功能主要包括考試信息的管理、教師及學(xué)生信息的維護,教師對考試地點的安排、考試信息的查詢和導(dǎo)出以及個人信息的修改等。并給出了測試方法和結(jié)果。
【關(guān)鍵詞】web項目;考試管理系統(tǒng);MVC設(shè)計模式;Servlet;JSP
0引言
近年來,信息化的實現(xiàn)已覆蓋到社會的每個領(lǐng)域,學(xué)校的信息管理也進一步網(wǎng)絡(luò)化,各種管理系統(tǒng)應(yīng)運而生。目前國內(nèi)已有的專做教務(wù)系統(tǒng)的分別有上海樹維、浙大正方、湖南強智等5家公司。普通高校二級學(xué)院的教務(wù)管理工作日漸繁忙、復(fù)雜,尤其是每學(xué)期的考試安排工作,信息量大、容易出錯、信息共享化較差。開發(fā)一套操作簡單、共享性強的考試安排管理系統(tǒng)對于減輕二級學(xué)院教務(wù)工作者的壓力、服務(wù)師生等方面都具有很強的實用性。
1系統(tǒng)簡介
二級學(xué)院考試管理系統(tǒng),是利用已有的校園網(wǎng)絡(luò)環(huán)境構(gòu)建基于web服務(wù)的考試管理系統(tǒng)。系統(tǒng)將提供三種不同身份的人員(分別為管理員、教師、學(xué)生)進行訪問與操作。依據(jù)不同的用戶身份設(shè)置不同的權(quán)限,用戶只能獲得相應(yīng)權(quán)限的管理與操作。針對管理員,首先滿足系統(tǒng)管理員維護系統(tǒng)基礎(chǔ)信息以及登記教師、在校生和考試教室相關(guān)信息的功能,解決時間沖突問題等;其次具備考試信息處理功能:包括考務(wù)信息的增加、刪除、更改、查看以及監(jiān)考人員增加、刪除、更改等功能。教師權(quán)限下,可進行考試信息的查詢(僅與本人相關(guān)的考試信息)、安排考試地點、導(dǎo)出考試信息和個人信息的修改(主要是密碼和電話)。學(xué)生權(quán)限下,可進行的操作:修改個人信息、查詢?yōu)g覽與自己相關(guān)的考試安排信息等。
2總體設(shè)計
2.1開發(fā)工具與環(huán)境
校園網(wǎng)是考試管理系統(tǒng)的運行環(huán)境,這樣隨著校園網(wǎng)絡(luò)部署的逐漸擴建,只要在有網(wǎng)絡(luò)的地方,添置管理點并部署本系統(tǒng),便能實現(xiàn)考試管理系統(tǒng)的擴展,使系統(tǒng)可以在全校范圍內(nèi)為管理者和應(yīng)用者進行服務(wù)。校園網(wǎng)絡(luò)將各個工作站與服務(wù)器連接起來,形成了以網(wǎng)絡(luò)進行全校覆蓋式管理的模式。操作平臺為:Windows7,前臺開發(fā)技術(shù)為:jsp、html、css樣式表以及js事件,數(shù)據(jù)庫平臺為:oracle,后臺開發(fā)工具為:myeclipse,服務(wù)器:tomcat。
2.2數(shù)據(jù)庫設(shè)計
對于考試管理系統(tǒng)首先要分析系統(tǒng)中的對象及對象之間的關(guān)系。在數(shù)據(jù)庫中建表對應(yīng)于分析好的對,完成數(shù)據(jù)庫設(shè)計。
2.3網(wǎng)頁設(shè)計
使用HTML、CSS完成靜態(tài)頁面的設(shè)計,通過jsp技術(shù)完成動態(tài)頁面,根據(jù)不同的權(quán)限登錄設(shè)計不同的信息查詢頁面。
2.4系統(tǒng)設(shè)計
采用mvc的設(shè)計思想,以一個servlet作為controller,不同請求訪問不同頁面。以jsp作為view視圖。將數(shù)據(jù)庫中的表對應(yīng)寫出實體類,封裝jdbc操作于dao包中作為model。實現(xiàn)model與view無聯(lián)系,完全由controller(servlet容器)派發(fā)資源。
2.5模塊設(shè)計
根據(jù)對象及對象關(guān)系應(yīng)分成管理員模塊、教師模塊、學(xué)生模塊、考試信息模塊,并對幾大模塊進行權(quán)限限制:管理員能夠在三大模塊進行增加、刪除、更新及瀏覽等動作,老師可在考試信息中安排時間,且和學(xué)生都可對考試信息進行瀏覽。系統(tǒng)設(shè)計模型如圖1所示。
3詳細設(shè)計
3.1用戶登錄詳細設(shè)計
圖1系統(tǒng)設(shè)計模型jsp頁面:登錄頁面中身份的選擇是通過設(shè)置不同的參數(shù),方便在ActionServlet中進行身份的判斷,分別設(shè)置為:管理員———0,教師———1,學(xué)生———2;servlet的設(shè)計:首先獲取請求資源路徑,截取具體動作;獲取相應(yīng)的參數(shù),通過身份進行判斷,若為三種身份中的任意一種,就會通過name查找,創(chuàng)建相應(yīng)的對象;當對象內(nèi)容為null時,將重新轉(zhuǎn)發(fā)數(shù)據(jù)到登錄頁面,重新登錄;否則會發(fā)送一個重定向響應(yīng)給客戶端使用指定的URL重定向位置,根據(jù)web.xml中的映射關(guān)系,找到相應(yīng)的servlet,根據(jù)不同的動作請求,進入不同的頁面。
3.2管理員模塊詳細設(shè)計
管理員主界面中的搜索信息,采用的是模糊搜索,通過SQL語句來執(zhí)行(ps為結(jié)果集對象)。管理員對教師和學(xué)生的基本信息的管理,主要是通過不同的servlet容器來接受客戶端的請求,servlet在判斷是何種請求時,采用了路徑截取法,截取url中位于‘/’和‘.’之間的部分,進行字符串的匹配,調(diào)用不同的dao包操作,完成請求,通過servlet返回響應(yīng)。管理員設(shè)置考試信息時,登錄到的考試信息頁面通過調(diào)用分頁查詢的findBypage方法獲取頁面數(shù)據(jù),且頁面中的字段信息可以修改,修改完后的字段根據(jù)修改的這條數(shù)據(jù)的ID確定修改的數(shù)據(jù)是哪條記錄的,將修改后的數(shù)據(jù)聯(lián)ID一起發(fā)到服務(wù)器進行處理后再將新的數(shù)據(jù)顯示回頁面。
3.3教師模塊詳細設(shè)計
管理員設(shè)置完考試信息后,考試信息會根據(jù)帶課老師的name關(guān)聯(lián)到該代課老師,代課老師登錄界面后會看到該考試信息,可進行對時間的設(shè)置操作。并且時間只能是整點。解決考試時間沖突的方法:考試時間為整點開始且2小時后結(jié)束,在該考試時間段內(nèi)該地點不能有第二個安排信息,因此時間和考試地點進行聯(lián)合唯一,當設(shè)置時間時,如果該時間段內(nèi)當前考試地點以有考試信息則需要更換考試時間,否則無法添入表中。
3.4學(xué)生模塊詳細設(shè)計
學(xué)生登錄后,首先會根據(jù)學(xué)號查詢到該學(xué)生的學(xué)生信息,然后根據(jù)學(xué)生信息中的班級關(guān)聯(lián)到考試信息,檢測考試信息是否完善,如果該考試信息未設(shè)置時間則清除,如果設(shè)置過時間則將考試信息返回到界面中并顯示。
4系統(tǒng)測試
(1)是否登錄后能保存登錄信息,如果不進行登錄操作是否能訪問內(nèi)部界面,以及登錄后的頁面是否對應(yīng)于不同權(quán)限的頁面。(2)登陸后時間顯示以及菜單欄信息是否正確,菜單欄是否能訪問到相應(yīng)功能的界面。(3)安排考試界面是否能直接在text里添加內(nèi)容,提交后數(shù)據(jù)庫表中是否有值,并且保證每條考試信息均可安排并正確提交。(4)刪除、查找、修改功能是否正常,數(shù)據(jù)庫表中是否有相應(yīng)的變化。(5)安排考試時間功能模塊,是否能檢測出時間的沖突問題,并提示用戶。經(jīng)過反復(fù)測試,不斷修改代碼,系統(tǒng)的各功能模塊均能實現(xiàn)需求中所要求的功能,并能正確的完成相關(guān)操作,保證了前端數(shù)據(jù)的修改與后臺數(shù)據(jù)的一致性、準確性。
5總結(jié)
軟件的整體設(shè)計采用了MVC的設(shè)計模式,實現(xiàn)model(模型)與view(視圖)的分離,資源完全由controller派發(fā)。采用面向?qū)ο蟮脑O(shè)計思想,將后臺操作完全封裝,通過對象進行操作,提高了安全性。整體的開發(fā)過程主要使用了Java、html、JavaScript、SQL等語言以及servlet、jsp相關(guān)技術(shù)來實現(xiàn),系統(tǒng)的整體架構(gòu)完全有自己編寫代碼實現(xiàn),雖然對于所有事務(wù)的處理表面看似簡單,其實所涉及的后臺數(shù)據(jù)的轉(zhuǎn)移、頁面的跳轉(zhuǎn)以及頁面動作的判斷和實現(xiàn)是比較復(fù)雜的,不需執(zhí)行的操作。該系統(tǒng)或許沒有使用框架的系統(tǒng)那么穩(wěn)定,但是通過源碼的實現(xiàn),能更好的熟悉系統(tǒng)的實現(xiàn)過程。系統(tǒng)還需優(yōu)化,后續(xù)需進一步提高系統(tǒng)性能,使用戶體驗度得以提高。
作者:楊榮 單位:西安郵電大學(xué)
【參考文獻】
[1]程凱.JSP中文問題及一套整體解決方案[J].許昌學(xué)院學(xué)報,2006,25(5):68-78.
[2]耿祥義.JSP基礎(chǔ)教程[M].北京:清華大學(xué)出版社,2004:2-255.
[3]徐建波,周新蓮.Web設(shè)計原理與編程技術(shù)[M].湖南:中南大學(xué)出版社,2005:165-180.
[4]孔靚,賈美娟.網(wǎng)頁制作中的CSS樣式表[J].科技創(chuàng)新與應(yīng)用,2012.
[5]薩師煊,王珊.數(shù)據(jù)庫系統(tǒng)概論[M].北京:高等教育出版社,2006:30-50.
[6]王保羅.Java面向?qū)ο蟪绦蛟O(shè)計[M].北京:清華大學(xué)出版社,2003.