基于java web 技術(shù)的高校教務(wù)系統(tǒng)的設(shè)計與實現(xiàn)——選課系統(tǒng)子模塊
《基于java web 技術(shù)的高校教務(wù)系統(tǒng)的設(shè)計與實現(xiàn)——選課系統(tǒng)子模塊》由會員分享,可在線閱讀,更多相關(guān)《基于java web 技術(shù)的高校教務(wù)系統(tǒng)的設(shè)計與實現(xiàn)——選課系統(tǒng)子模塊(45頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 天津商務(wù)職業(yè)學(xué)院 畢業(yè)設(shè)計(論文) 題目:基于Java Web 技術(shù)的高校教務(wù)系統(tǒng)的設(shè)計與實現(xiàn) ——選課系統(tǒng)子模塊 專業(yè)班級 軟件1001班 學(xué) 號 0108100119 姓 名 王悅 指導(dǎo)教師 馮毅 企業(yè)指導(dǎo)教師 何晶 2013年4月24日 題目:基于Java Web 技術(shù)的高校教務(wù)系統(tǒng)的設(shè)計與實現(xiàn) ——選課系統(tǒng)子模塊 摘 要 隨著在校大學(xué)生人數(shù)的不斷增加、教育改革的不斷深化,建立一套能夠適應(yīng)這些改變的行政管理方案也就顯得尤為重要。以往的選課方法是隨堂點名。這種方法雖然直
2、接,但是造成選課的盲目性和教務(wù)處處理數(shù)據(jù)的繁重性。為了減輕教務(wù)處工作,以及每個學(xué)生更好的選擇自己所喜歡的科目。針對學(xué)生選課這一環(huán)節(jié),開發(fā)一套適合校情的選課系統(tǒng)便成為了教務(wù)處的迫切需求。本系統(tǒng)從學(xué)生自主選課到教師課程發(fā)布這兩個方面進(jìn)行了設(shè)計,基本實現(xiàn)了學(xué)生的信息查詢,選課功能以及教室對課程信息發(fā)布的管理等功能。 本文通過分析瀏覽器/服務(wù)器結(jié)構(gòu)的特點并結(jié)合高校選課的實際情況,提出了基于B/S結(jié)構(gòu)的高校選課系統(tǒng)的基本設(shè)計思想,簡要介紹了系統(tǒng)功能模塊以及數(shù)據(jù)庫的設(shè)計,著重討論了用JavaEE和MySQL開發(fā)高校選課系統(tǒng)時的數(shù)據(jù)庫訪問技術(shù)和底層框架技術(shù),并給出了部分實現(xiàn)代碼。該系統(tǒng)完成了院系、專業(yè)
3、、課程、教師、學(xué)生信息的管理功能及選課、查看選課學(xué)生、權(quán)限限制等功能。 經(jīng)測試,此系統(tǒng)滿足高校教務(wù)系統(tǒng)用戶需求,能夠促進(jìn)當(dāng)前高校教務(wù)工作的管理水平,可以顯著減輕教務(wù)人員的工作負(fù)擔(dān),大大提高工作效率,有一定的實際應(yīng)用價值。 關(guān)鍵詞 B/S ;高校選課系統(tǒng);數(shù)據(jù)庫; Abstract With the increase in the number of college students, the deepening of education reform, the establishment of a set of administrative solutio
4、ns to adapt to these changes it is particularly important. Elective property named. Although this method directly, but causing of elective blindness and the Office of Academic Affairs for processing data heavy. In order to mitigate the Office of Academic Affairs, as well as each student a better cho
5、ice of their favorite subjects. For student elective this part of the development of a suitable school situation elective system has become the urgent needs of the Office of Academic Affairs. The system independent course from students to teacher courses released these two aspects of the design, the
6、 basic realization of the student information query, elective function as well as classroom management and other functions published information on this program. In this paper, by analyzing the features of the browser / server architecture combined with the actual situation of university course
7、, based on B / S structure and the basic design of the college elective system, a brief introduction system function modules and database design, focused on the use of JavaEE and MySQL developers college elective system database access technology and the underlying framework technology, and gives a
8、part of the implementation code. The system completed a faculty, curriculum, teachers, student information management functions and course to view the course student permission restrictions. Test system to meet the university educational system user demand, to promote the management level of the
9、 college academic work, can significantly reduce the workload of the academic staff, greatly improve work efficiency, has some practical value. Keywords B / S; university elective system; database 目 錄 第一章 緒論 1 1.1課題背景 1 1.2 選課系統(tǒng)簡介 1 第二章 需求分析 2 2.1功能性需求 2 2.2非功能性需求 5 第三章 可行性分析
10、 6 3.1編寫目的 6 3.2開發(fā)系統(tǒng)的技術(shù)可行性 6 3.3開發(fā)系統(tǒng)的法律可行性 6 3.4社會條件上的可行性 7 第四章 系統(tǒng)相關(guān)技術(shù)介紹 7 4.1框架簡介 7 4.2實現(xiàn)架構(gòu)圖 7 第五章 系統(tǒng)設(shè)計 8 5.1數(shù)據(jù)庫設(shè)計 8 5.2系統(tǒng)架構(gòu)設(shè)計 11 5.3運行設(shè)計 12 5.4系統(tǒng)功能結(jié)構(gòu) 13 5.5 系統(tǒng)流程圖 14 5.6軟件結(jié)構(gòu) 16 5.7詳細(xì)設(shè)計 16 5.8系統(tǒng)功能模塊設(shè)計 18 第六章 系統(tǒng)測試 35 6.1測試方法 35 6.2測試加評價 35 總 結(jié) 36 參考文獻(xiàn) 37 附錄 38 天津商務(wù)職業(yè)學(xué)院2
11、010屆專科生畢業(yè)設(shè)計(論文) 第一章 緒論 1.1課題背景 隨著科技的發(fā)展,校園網(wǎng)技術(shù)迅速發(fā)展。對于高校而言,建立校園網(wǎng)的作用一般有以下兩方面:一是外部網(wǎng)絡(luò)連接,實現(xiàn)與網(wǎng)絡(luò)連接,提供本校的信息服務(wù),融入世界信息潮流;了解外面世界,加強學(xué)術(shù)交流與合作。另一個就是建立本校的管理信息系統(tǒng),實現(xiàn)管理的科學(xué)化、現(xiàn)代化;利用現(xiàn)代化的手段提高教學(xué)質(zhì)量和管理水平。 選課系統(tǒng)屬于教學(xué)信息管理系統(tǒng)一部分。隨著高等教育的發(fā)展和社會需要,各高校盡多地開設(shè)各類課程,以拓寬學(xué)生的知識面,培養(yǎng)學(xué)生的個性和創(chuàng)造能力,提高學(xué)生的綜合素質(zhì)。但由于傳統(tǒng)的人工選課數(shù)據(jù)是經(jīng)過多級手工處理后上報教務(wù)處的,效率較低,而選課時煩瑣
12、的工作也給教務(wù)管理部門帶來了很大的工作量,因此容易出錯。另一方面,學(xué)生對課程的遲選、補選、改選操作非常麻煩,同時教學(xué)管理部門無法掌握選課人數(shù)的變化和學(xué)生分布的情況,難以進(jìn)行動態(tài)調(diào)整。傳統(tǒng)的選課方式已經(jīng)不適應(yīng)現(xiàn)代教務(wù)教學(xué)的改革和發(fā)展,迫切需要一種新的選課方式。為使教學(xué)管理工作的科學(xué)化、規(guī)范化,就必須采用計算機輔助管理。計算機管理使選課更加高效準(zhǔn)確,省去了大量的人力勞動,提高了教學(xué)管理的信息化水平。為了切實解決了課程管理中存在的諸多問題,提高教務(wù)管理的水平和質(zhì)量,使校選課的管理更加規(guī)范,經(jīng)過幾個月的努力,我設(shè)計開發(fā)了高校選課系統(tǒng)。此系統(tǒng)基本上實現(xiàn)了一些選課相關(guān)的功能。 1.2 選課系統(tǒng)簡介 本
13、系統(tǒng)面向全校師生和管理人員,是高校日常教學(xué)、教務(wù)管理的應(yīng)用軟件。該系統(tǒng)的目的主要是實現(xiàn)學(xué)生選擇選修課的公平性和方便性,讓他們可以選擇課程,刪除選課,查詢選修課程信息;對于任課教師,可以發(fā)布選課信息,設(shè)置選課年級及選課人數(shù); 第二章 需求分析 2.1功能性需求 功能類別 功能名稱、標(biāo)識符 描述 用戶登錄 用戶登錄 對用戶輸入的用戶名,密碼進(jìn)行驗證,驗證通過后,系統(tǒng)判斷用戶的權(quán)限,隨后,用戶就登入相應(yīng)的權(quán)限界面,可以對系統(tǒng)進(jìn)行使用。 用戶注冊 用戶注冊 當(dāng)新用戶使用時,可以進(jìn)行注冊從而使用本軟件。 實現(xiàn)課程信息和專業(yè)的具體管理 專業(yè)管理 對系
14、統(tǒng)里面的專業(yè)進(jìn)行管理,能對專業(yè)進(jìn)行添加和對專業(yè)的有關(guān)功能進(jìn)行操作。 課程管理 對課程的管理進(jìn)行操作,包括課程的添加、課程的設(shè)置類型等多個功能。 學(xué)生選課功能 學(xué)生選課 學(xué)生選擇自己要新修的課程。 查看已選課程 查看選擇的課程 學(xué)生查看自己已將選修的課程。 學(xué)生選課信息的統(tǒng)計 統(tǒng)計學(xué)生的選課信息 統(tǒng)計每門開課的課程的上課時間、地點和學(xué)生人數(shù)。 修改密碼 修改賬號的密碼 學(xué)生對自己賬號的密碼進(jìn)行修改。 2.1.1用例圖 用戶注冊 信息管理 用戶選課 查詢課程 修改密碼 2.2非功能性需求 2.2.1 用戶界面需求
15、 需求名稱 詳細(xì)要求 母窗體顯示位置 窗體初次啟動時在屏幕位置居中,窗體最大化。 子窗體顯示位置 窗體初次啟動時在母窗體居中。 界面風(fēng)格 界面為清新風(fēng)格。 界面字體顏色 綠色為主 2.2.2 軟硬件環(huán)境需求 需求名稱 詳細(xì)要求 硬件要求 IBM兼容機、Intel Pentium III 800/AMD K7以上處理器、128M以上內(nèi)存,支持標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議的網(wǎng)卡 系統(tǒng)平臺 Windows2000/WinXP/Win2003 RedHat Linux 9/Fedora系列 運行環(huán)境 Sun Java JRM1.6 For Win/Linu
16、x 2.2.3 產(chǎn)品質(zhì)量需求 主要質(zhì)量屬性 詳細(xì)要求 正確性 業(yè)務(wù)錯誤不允許出現(xiàn) 健壯性 能夠正常使用 可靠性 除電源、硬件、操作系統(tǒng)、服務(wù)器管理系統(tǒng)外程序不允許異常退出或崩潰。 性能,效率 系統(tǒng)處理業(yè)務(wù)時間最遲時間小于等于5秒 易用性 不用安裝,操作簡便 清晰性 業(yè)務(wù)流程明確 安全性 用戶信息保密 可擴展性 可在當(dāng)前需求基礎(chǔ)之上進(jìn)行功能上的擴展 兼容性 可運行在大多數(shù)主流的硬件環(huán)境中 可移植性 可運行在大多數(shù)主流的操作平臺上 第三章 可行性分析 3.1編寫目的 為了給軟件開發(fā)企業(yè)的決策層提供是否進(jìn)行項目實施的參考
17、依據(jù),現(xiàn)以文件的形式分析項目的風(fēng)險、項目需要的投資與效益。方便讀者概要的了解此軟件系統(tǒng)。 3.2開發(fā)系統(tǒng)的技術(shù)可行性 學(xué)生選課系統(tǒng)是一款管理系統(tǒng),系統(tǒng)囊括了專業(yè)管理和課程管理的基本過程。系統(tǒng)覆蓋學(xué)生的選課、查看、修改密碼等各個環(huán)節(jié),軟件的各個模塊操作界面簡單、實用,用戶可以在最短的時間內(nèi)掌握系統(tǒng)的使用方法。用戶可以在最短時間內(nèi)找到自己所需要的信息。系統(tǒng)采用如今已廣泛被人們接受的B/S結(jié)構(gòu),可以通過Internet協(xié)同工作,數(shù)據(jù)共享。系統(tǒng)軟件采用現(xiàn)在流行且技術(shù)很成熟的框架Struts + hibernate+Spring+MySQL平臺進(jìn)行開發(fā)并實現(xiàn)??梢赃M(jìn)行高效的管理,提高工作效率。參考《
18、學(xué)生選課系統(tǒng)統(tǒng)需求說明書》,本系統(tǒng)具有以下特點: l 具有良好的系統(tǒng)性能,友好的用戶界面。 l 較高的處理效率,便于使用和維護(hù)。 l 采用成熟的技術(shù)開發(fā),全系統(tǒng)具有較高的技術(shù)水平 l 盡可能地簡化選課的管理工作,提高工作效率 3.3開發(fā)系統(tǒng)的法律可行性 開發(fā)本系統(tǒng)是為了高校選課的高效管理,并實現(xiàn)對決策的支持。在開發(fā)的過程中完全自主開發(fā),不會出現(xiàn)侵權(quán)問題。另外也會使用正版的軟件來開發(fā)系統(tǒng)和運行系統(tǒng)。開發(fā)出的新系統(tǒng)的工作流程也是完全符合藥品行業(yè)的標(biāo)準(zhǔn),完全在法律的允許范圍之內(nèi)。 3.4社會條件上的可行性 絡(luò)的普及,網(wǎng)絡(luò)也越來越受到人們的喜愛,這也為新系統(tǒng)實現(xiàn)后的運行提供了一個大的環(huán)
19、境。 第四章 系統(tǒng)相關(guān)技術(shù)介紹 4.1框架簡介 (1)Struts Struts是目前Java Web MVC框架中不爭的王者。經(jīng)過長達(dá)五年的發(fā)展,Struts已經(jīng)逐漸成長為一個穩(wěn)定、成熟的框架,并且占有了MVC框架中最大的市場份額。 (2)Spring Spring是一個開源框架,它是為了解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性而開發(fā)的。Spring使使用基本的JavaBeans來完成以前只可能由EJB完成的事情變得可能了。Spring的用途不僅限于服務(wù)器端的開發(fā)。從簡單性、可測試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。在Spring中應(yīng)用對象被聲明式地組合在一個X
20、ML文件里。Spring也提供了很多基礎(chǔ)功能(事務(wù)管理、持久化框架集成等),讓開發(fā)者更專注于應(yīng)用邏輯。所有的這些特征使開發(fā)者能夠編寫更干凈、更易管理、并且更易于測試的代碼。 (3)Hibernate Hibernate是高性能的開源框架。提供O/R映像功能,通過XML配置文件能夠?qū)ο笥诚竦綌?shù)據(jù)庫。對數(shù)據(jù)操作進(jìn)行了封裝,能夠方便簡潔地解決大多數(shù)的數(shù)據(jù)持久化操作。 4.2實現(xiàn)架構(gòu)圖 (1)Filter:Web過瀘器,繼承javax.servlet.Filter,用于處理只要客戶請求就必須初始化或處理的實例。例如可以在這里進(jìn)行請求的編碼轉(zhuǎn)換,為了更好地支持中文,更好的方法就是把客戶端的請入
21、信息轉(zhuǎn)換成UTF-8格式,并存于數(shù)據(jù)庫中,這種轉(zhuǎn)換就可以在過瀘器中進(jìn)行處理。 (2)ActionServlet:是Struts提供的總控制器,在這里接收來自客戶端的所有請求,并根據(jù)請求參數(shù)和Struts配置文件struts-config.xml決定請求由那個具體的Action來處理。 (3)Action:由Struts提供的Action類,繼承Struts的org.apache.struts.action.Action類??蛻舻牟煌埱螅梢杂刹煌腁ction來處理(由ActionServlet總控制器選擇)。Action用于處理客戶請求的具體操作,比如調(diào)調(diào)用Service層的方
22、法進(jìn)行數(shù)據(jù)保存或讀取。Action還根據(jù)struts-config.xml配置選擇頁面的轉(zhuǎn)發(fā)。對客戶輸入的信息進(jìn)行驗證。 (4)ActionForm::由Struts提供的Form類,繼承Struts的org.apache.struts.action.ActionForm類。用于封裝來自客戶窗體的信息,并可以對信息進(jìn)行初級有效性驗證。 (5)Jsp和tiles-defs.xml:tiles-defs.xml由Strtus提供,用于頁面的定義,可以定義JSP模板,不同頁面都可以斷承該模板。Jsp用于表示界面,可以在Jsp中書寫Struts標(biāo)簽由不牽涉任何Java代碼。 (6)e
23、rvice接口:定義Service的接口,給上層調(diào)用。這里編寫上層所需方法的定義。 (7)Service接口實現(xiàn):這里實現(xiàn)Service接口方法的具本實現(xiàn),并實現(xiàn)商務(wù)邏輯。該類為了支持Spring的依賴注入功能,需要實現(xiàn)一個setXxxDAO()的方法,這樣類就可以利用注入來的DAO進(jìn)行數(shù)處理。在這一層利用Spring的事務(wù)管理,對這層的方法進(jìn)行事務(wù)聲明管理。 (8)DAO接口:這里定義DAO數(shù)據(jù)訪問層的接口,給業(yè)務(wù)層Service調(diào)用。 (9)DAO接口實現(xiàn):這里具體實現(xiàn)DAO接口的所有方法,只進(jìn)行數(shù)據(jù)的保存、讀取、更新等動作,不牽涉事務(wù)。該類繼承Spring的org.sp
24、ringframework.orm.hibernate3.support.HibernateDaoSupport類,可以不再理會Hibernate的API,即可進(jìn)行Hibernate方式的數(shù)據(jù)操作??梢宰尨a更簡潔,有條理。 (10)Spring:這是系統(tǒng)的中心部分,這里在一個XML配置文件中定義了大部分的系統(tǒng)Bean,并對它們進(jìn)行集中管理。定義了DAO層、Service層的所有類。定義了事務(wù),并且定義了方法的事務(wù)策略。 第五章 系統(tǒng)設(shè)計 5.1數(shù)據(jù)庫設(shè)計 本系統(tǒng)定義的數(shù)據(jù)庫包括: 表tb_course、 tb_specialty、tb_stucourse、tb_stuus
25、er、tb_userlogin. tb_course表:主要用來保存于課程有關(guān)的信息 描述如圖2-1 圖2-1表 tb_course tb_specialty表主要用來保存與專業(yè)有關(guān)的信息 描述如圖2-2 圖2-2表tb_specialty tb_stucourse表:由于會有多個學(xué)生選擇多門課程,所以學(xué)生與課程的關(guān)系為多對多,而該表就是用于關(guān)聯(lián)學(xué)生與課程多對多關(guān)系。 描述如圖2-3 圖2-3 tb_stucourse表 表tb_stuuser主要用來保存學(xué)生的基本信息 描述如圖2-4 圖2-4表tb_stuuse 表tb_userlogin表
26、主要用于保存登陸信息 描述如圖2-5 圖2-5表tb_userlogin 5.2系統(tǒng)架構(gòu)設(shè)計 5.2.1 邏輯分層結(jié)構(gòu)設(shè)計 本系統(tǒng)采用Struts + hibernate+Spring+MySQL平臺進(jìn)行開發(fā)并實現(xiàn),總共由4層結(jié)構(gòu)組成,分別為表示層、業(yè)務(wù)層、持久層、數(shù)據(jù)庫層,完全遵循MVC的模式。其中表示層和業(yè)務(wù)層由struts框架組成,表示層用于提供程序與用戶交互的界面,項目中主要通過JSP、ActionForm、Struts標(biāo)簽庫進(jìn)行展示;業(yè)務(wù)邏輯層用于處理程序中的各種業(yè)務(wù)邏輯,項目中通過Struts框架的中央控制器及Action對象對業(yè)務(wù)請求進(jìn)行處理;持久層由hib
27、ernate框架組成,負(fù)責(zé)應(yīng)用程序與關(guān)系模型數(shù)據(jù)庫之間的操作;MySQL負(fù)責(zé)數(shù)據(jù)庫層,具體實現(xiàn)大致如圖3-1 圖3-1 業(yè)務(wù)邏輯分層結(jié)構(gòu)圖 5.2.2實體對象設(shè)計 本系統(tǒng)實體映射就是將數(shù)據(jù)表中的字段映射為Java類中對應(yīng)類型的變量,然后為這些變量增加 setter與getter方法,用于存取變量的值,由于在存取數(shù)據(jù)庫的時候我們使用了Hibernate框架,因此還需要編寫關(guān)于數(shù)據(jù)表中字段與實體類中的變量的hbm.xml配置文件。在高校學(xué)生選課系統(tǒng)中所有的實體類與映像文件全部存放在com.jwy.dto包中 用戶登陸信息: UserLogin.java為用戶登陸信息實體類
28、,用于封裝部門信息。 UserLogin.hbm.xml實體關(guān)系映射配置文件,在該文件中定義UserLogin實體類中的屬性與tb_userlogin表的關(guān)系,其中主鍵列ID的生成方式為自動增長。 專業(yè)信息: Specialty為專業(yè)信息實體類,用于映射專業(yè)信息表中的字段。 Specialty.hbn.xml為實體關(guān)系映射配置文件,在該文件中將Specialty類與數(shù)據(jù)庫中的tb_ specialty表進(jìn)行關(guān)聯(lián)映射,其中主鍵列ID的生成方式為自動增長。 課程信息: Course.java為課程信息實體類,用于映射課程表中的字段。 Course.java.hbm.xml實體關(guān)系映射
29、配置文件,在該文件中將Course類中的屬性與數(shù)據(jù)表tb_course的字段進(jìn)行映射,其中主鍵列ID的生成方式為自動增長。 學(xué)生信息: StuUser.java為學(xué)生信息實體類,用于映射學(xué)生信息表中的字段。 StuUser.hbm.xml實體關(guān)系映射配置文件,將實體類StuUser類中的屬性與tb_stuuser表中的字段進(jìn)行映射,其中ID列為主鍵列,生成方式為用戶指定。 學(xué)生與課程關(guān)聯(lián)信息: StuCourse.java為學(xué)生與課程關(guān)聯(lián)信息表的實體映射類。 StuCourse.hbm.xml實體關(guān)系映射配置文件,用于映射實體類StuCourse中的屬性與數(shù)據(jù)表tb_ StuCou
30、rse中的對應(yīng)關(guān)系。 5.3運行設(shè)計 5.3.1 運行環(huán)境 本系統(tǒng)對客戶端的要求不高,一般的硬件環(huán)境就可滿足要求,參考配置如下: CPU: Celeron(R) 1.8GHz 內(nèi)存:DDR 1G 硬盤:120G 7200轉(zhuǎn)/min 5.3.2運行模塊的組合 學(xué)生用戶模塊 管理人員模塊 運行模塊 登陸模塊 5.4系統(tǒng)功能結(jié)構(gòu) 高校學(xué)生選課系統(tǒng)的功能結(jié)構(gòu)如圖1-1所示: 高校學(xué)生選課系統(tǒng) 用戶管理模塊 用戶登陸 學(xué)生模塊 管理模塊 用戶注冊 選擇課程 查詢課選課程 信息統(tǒng)計 查詢信息 查詢已選課程 輸入基本信息 修改密碼
31、 增加專業(yè)信息 修改專業(yè)信息 增加新課程信息 修改課程信息 圖1-1 學(xué)生選課系統(tǒng)功能結(jié)構(gòu)圖 5.5 系統(tǒng)流程圖 根據(jù)學(xué)生選課系統(tǒng)的操作流程,系統(tǒng)的流程圖如圖1-2、1-3所示 管理員 學(xué)生選課系統(tǒng) 管理員登陸 基本信息管理 專業(yè)信息管理 課程信息管理 添加專業(yè)信息 查詢專業(yè)信息 修改專業(yè)信息 添加課程信息 查詢課程信息 修改課程信息 圖1-2 學(xué)生選課系統(tǒng)流程圖1 學(xué)生 學(xué)生選課系統(tǒng) 學(xué)生登陸 選課信息管理 查詢可選課程 選擇課程 查詢已選課程 查詢個人信息 圖1-3 學(xué)生選課系統(tǒng)流程圖2 5.6軟件結(jié)構(gòu) 該系統(tǒng)按照
32、不同的功能可以劃分為用戶管理模塊,學(xué)生模塊和管理模塊。系統(tǒng)功能結(jié)果圖如下: 用戶登錄 學(xué)生模塊 用戶管理模塊 管理模塊 用戶注冊 修改密碼 輸入基本信息 查詢可選課程 選擇課程 查詢已選課程 查詢個人信息 修改專業(yè)信息 增加新課程信息 修改課程信息 信息統(tǒng)計 增加專業(yè)信息 5.7詳細(xì)設(shè)計 5.7.1界面設(shè)計 (1)通過如下的打登錄界面,能夠保護(hù)系統(tǒng)的安全性: (2)下面是管理員系統(tǒng)的主界面,通過菜單可以實現(xiàn)各個功能模塊:(3)下面是學(xué)生系統(tǒng)的主頁面,通過菜單實現(xiàn)各個功能: 5.8系統(tǒng)功能模塊設(shè)計 5.8.1用戶模塊 (1)用戶注冊流
33、程 用戶注冊流程功能主要針對學(xué)生用戶,學(xué)生注冊的具體流程如下圖所示。進(jìn)入注冊頁面后輸入登錄賬號等注冊信息,然后系統(tǒng)會判斷用戶輸入的登錄賬號是否已被占用,如果被占用則返回注冊頁面并給出提示;如果沒被占用。則把用戶信息寫入數(shù)據(jù)庫。如何進(jìn)入輸入用戶基本信息頁面。 學(xué)生注冊 輸入注冊信息 判斷注冊賬號是否被占用 將注冊信息寫入數(shù)據(jù)庫 進(jìn)入填寫基本信息頁面 (2)用戶注冊JSP頁面 在系統(tǒng)首頁中單擊“新用戶注冊”超鏈接,就進(jìn)入到reg.jsp頁面。其運行效果如下: 在該頁面中使用Strus的標(biāo)簽庫創(chuàng)建表單對象并在表單對象中分別加入用戶名,密碼,確認(rèn)密碼以及電子郵箱等表單元素
34、用于輸入信息,然后通過reg.do請求用戶注冊控制器中的注冊新用戶的方法來注冊一個新用戶 用戶注冊成功后會進(jìn)入到學(xué)生基本信息頁面——addStruInfo.jsp,如圖: 填寫基本信息頁面中,需要用戶輸入個人信息以及選擇所學(xué)專業(yè)。 (3)用戶登錄流程 用戶流程圖如下: 用戶登錄 輸入登錄信息 驗證用戶名密碼 判斷用戶身份 管理模塊首頁 判斷是否填寫基本信息 填寫基本信息 學(xué)生模塊首頁 (4)用戶登錄JSP頁面 用戶登錄頁面index.jsp也是該系統(tǒng)的首頁,主要用于輸入用戶登錄信息,進(jìn)行登錄操作,頁面運行效果如下: (5)密碼修
35、改JSP頁面 用戶選擇密碼修改連接進(jìn)入密碼修改JSP頁面: (6)密碼修改流程 密碼修改流程圖如下: 密碼修改 從當(dāng)前會話中獲取登錄賬號 輸入驗證身份信息與新密碼 驗證用戶身份 更新密碼 生產(chǎn)提示信息返回 5.8.2管理模塊 管理模塊主要實現(xiàn)了管理專業(yè)信息,課程信息以及對學(xué)生選課情況進(jìn)行統(tǒng)計輸出的功能。在此模塊中使用了一個框架頁面manager.jsp,其代碼如下:
(1) 專業(yè)管理流程 專業(yè)管理的流程圖如下:專業(yè)管理 增加新專業(yè) 設(shè)置為已結(jié)業(yè) 輸38、入新專業(yè)信息 顯示出未結(jié)業(yè)專業(yè) 寫入數(shù)據(jù)庫 設(shè)置為不可選 更新數(shù)據(jù)庫 (2)專業(yè)管理頁面 在top.jsp頁面中單擊“專業(yè)管理”超鏈接,將進(jìn)入showSpecialty.jsp頁面,其中顯示了所有的專業(yè)信息。如下圖所示。通過“設(shè)置為已結(jié)業(yè)”超鏈接可以將對應(yīng)的專業(yè)設(shè)置為已結(jié)業(yè),這樣新用戶就不能注冊為該專業(yè)的學(xué)生了. showSpecialty.jsp頁面直接使用EL表達(dá)式讀取保存在請求中的專業(yè)信息,并將其顯示在頁面中 單擊“增加新專業(yè)”按鈕可以進(jìn)入增加一個新的專業(yè)頁面addSpecialty.jsp,在該頁面中輸入新專業(yè)信息后,點擊“確定”按鈕,即可新建
39、一個專業(yè)。 (3)課程管理流程 該流程圖如下: 課程管理 增加新課程 根據(jù)條件查詢課程 選舉課程所屬專業(yè),輸入課程信息 顯示課程詳細(xì)信息 寫入數(shù)據(jù)庫 設(shè)置為不可選 更新數(shù)據(jù)庫 (4)課程管理頁面 課程管理包括3個頁面,即按照指定條件搜索課程頁面showCourse.jsp,增加新課程頁面addCourse.jsp以及顯示課程詳細(xì)信息并將課程設(shè)置為不可選頁面courseInfo.jsp。 showCourse.jsp頁面根據(jù)用戶輸入的條件搜索符合條件的課程,并顯示。 頁面運行效果如下: 在該頁面中單擊“增加新課程
40、”按鈕,將進(jìn)入到addCourse.jsp頁面,此頁面主要用于創(chuàng)建新的課程
該頁面運行效果如下:
另外單擊查詢出來的課程名稱,將進(jìn)入courseInfo.jsp頁面。該頁面主要用于查詢課程的詳細(xì)信息,也可在其中通過
41、jsp頁面與顯示聽課學(xué)生的stuList.jsp頁面構(gòu)成。在showStat.jsp頁面中,按照專業(yè),授課教師姓名以及課程名稱搜索出滿足添加的課程,并顯示在頁面中 該頁面運行效果如下: 單擊“上課學(xué)員名單”列中某一課程對應(yīng)的“查看”按鈕后,程序?qū)⒄{(diào)用專業(yè)管理控制器中的stuList()方法將課程信息以及選擇了該門課程的學(xué)生查詢出來,并顯示在stuList.jsp頁面中。 該頁面運行效果如下: (7)修改密碼 修改密碼時,直接在updatePow.jsp頁面中通過update.do請求用戶模塊中的用于修改密碼的控制器類即可。在這個請求中傳遞了一個type參數(shù),其值為m表示這
42、個修改密碼請求時管理模塊發(fā)出的,在完成請求后還有返回到管理模塊的對應(yīng)頁面。 該頁面一下效果如下: 8)退出系統(tǒng) 退出系統(tǒng)是在exit.jsp頁面中完成,在該頁面中只需將當(dāng)前的用戶會話銷毀,并跳出框架返回到項目的首頁即可。 5.8.3學(xué)生模塊 學(xué)生模塊中的大部分功能都是由StuUserAction類來完成的,StuUserAction繼承了DispatchAction類,是一個Struts的控制器。在StuUserAction類中編寫insert()方法,用于向數(shù)據(jù)庫插入學(xué)生的基本信息;編寫welcome()方法此方法將根據(jù)學(xué)生編號查詢出學(xué)生的基本信息,然后返回到學(xué)生模塊的
43、首頁——welcome.jsp頁面;編寫exit()方法,該方法將對于退出系統(tǒng)的請求,在該方法中首先將用戶會話對象銷毀,然后返回項目首頁;編寫selected()方法,用于查詢學(xué)生已經(jīng)選過的課程;編寫select()方法,用于查詢學(xué)生可選的所有課程;編寫selctting()方法,用于執(zhí)行學(xué)生選課操作,將學(xué)生標(biāo)號與所選的課程編號關(guān)聯(lián)起來;編寫courseInfo()方法,用于查詢課程的詳細(xì)信息。 (1)學(xué)生基本信息頁面 學(xué)生進(jìn)步信息頁面welcome.jsp是學(xué)生模塊的首頁,主要用于顯示學(xué)生的基本信息。學(xué)生在已填寫過基本信息的情況下,輸入用戶名與密碼,單擊“登錄”按鈕,就進(jìn)入到該頁面,其運
44、行效果如下: (1)選擇新課程頁面 在學(xué)生模塊頁面中單擊“選擇新課程”超鏈接,程序?qū)⒄{(diào)用學(xué)生模塊控制器類StuUserAction中的select方法將此學(xué)生可以選擇的所有課程查詢出來,然后顯示在select.jsp頁面中,其運行效果如下: (3) 查詢已選課程頁面 Selected.jsp頁面用于顯示學(xué)生已選過的課程信息,學(xué)生可以從中查詢到自己已經(jīng)學(xué)過哪些課程,正在學(xué)習(xí)哪些課程,其運行效果如下: (4) 課程詳細(xì)信息頁面 在選擇新課程與查詢已選課程的頁面中通過單擊對應(yīng)的課程名都可以進(jìn)入到courseInfo.jsp頁面,該頁面用于顯示課程的詳細(xì)信息,在返回時根
45、據(jù)URL中的path參數(shù)自動判斷應(yīng)該返回到哪一頁面,其運行效果如下: (5)修改登錄密碼頁面 在登錄修改密碼頁面stuUpdate.jsp中,學(xué)生可以修改自己的登錄密碼,只要輸入正確的原始密碼以及注冊賬號時填寫的郵箱地址即可進(jìn)行密碼修改。密碼修改操作通過updatePwd.do請求調(diào)用用戶模塊中的密碼修改控制器類UpdatePwdAction進(jìn)行身份驗證以及更新數(shù)據(jù)庫中的舊密碼。在請求中傳遞了一個type參數(shù),值為u表示這個修改密碼請求是學(xué)生模塊發(fā)出的,最后還要返回到學(xué)生模塊的對應(yīng)頁面。其運行效果如下: 第六章 系統(tǒng)測試 6.1測試方法 軟件測設(shè)有2種基本方式,即白盒測試
46、方法與黑盒測試方法。 白盒測試或者基本發(fā)麻的測試檢查程序的內(nèi)部設(shè)計。 黑盒測試也可稱為功能測試,是根據(jù)軟件的用途和外部特性查找軟件缺陷。 6.2測試加評價 系統(tǒng)基本能實現(xiàn)需求計劃中的大部分功能,然后往系統(tǒng)中添加各種數(shù)據(jù),系統(tǒng)顯示正常,各種數(shù)據(jù)沒有益出,能夠正常顯示,并且與后臺MYSQL數(shù)據(jù)庫保持一致,因此系統(tǒng)測試通過,這不得不得益于開發(fā)工具和數(shù)據(jù)庫后臺的穩(wěn)定性的特點。 總 結(jié) 高校學(xué)生選課系統(tǒng)是一項比較復(fù)雜而且投入巨大收益較大的系統(tǒng)Webg工程,針對它的開發(fā)周期所用時間比較長,所以我們小組討論決定通過分組來完成這個系統(tǒng),我們決定兩個人分工合作,分模塊,有難點問題共同尋
47、找解決方案。我們針對高校學(xué)生選課的實際情況提出系統(tǒng)設(shè)計的原型,分析了每個模塊應(yīng)具備的功能,并且對每個模塊做出詳細(xì)的介紹,對每個模塊的功能說明了原理以及所具備的特點。 本系統(tǒng)能在WINDOWS以上的操作系統(tǒng)運行,高校學(xué)生選課系統(tǒng)的設(shè)計與實現(xiàn)是基于B/S結(jié)構(gòu)和JavaWeb 開發(fā)平臺,采用了Struts+Sring+Hibernate 三個框架整合與JAVA編程語言結(jié)合JAVA WEB設(shè)計與實現(xiàn)的。采用了MY SQL數(shù)據(jù)庫開發(fā)設(shè)計系統(tǒng)在邏輯上分成三層:表示層、業(yè)務(wù)層和數(shù)據(jù)層。其中表示層用來表示信息和收集數(shù)據(jù)。它將系統(tǒng)的開發(fā)代碼和用戶接口內(nèi)容分離,其結(jié)構(gòu)更模塊化;業(yè)務(wù)層用于實現(xiàn)應(yīng)用程序中的商務(wù)
48、邏輯,將商務(wù)邏輯用JAVA語言開發(fā)成COM+組件,程序代碼更安全,移植更方便,執(zhí)行效率也更高;數(shù)據(jù)層包括數(shù)據(jù)的定義、維護(hù)、訪問和更新,以及管理并響應(yīng)業(yè)務(wù)服務(wù)的數(shù)據(jù)請求等功能。系統(tǒng)在邏輯上分層設(shè)計可使系統(tǒng)具有較高的擴展性和可維護(hù)性。 本系統(tǒng)設(shè)計基本是想了對高校的學(xué)生選課、管理選課信息、管理專業(yè)信息、管理賬號等通用功能。我們在課程設(shè)計這方面市比較弱的,但是經(jīng)過幾個月的畢業(yè)設(shè)計,我們都付出了辛勤的汗水,得到的收獲是不可過量的,我們對JAVA WEB的開發(fā)翻閱了大量的書籍,并且也充分的利用的英特網(wǎng),現(xiàn)在我們對JAVA 數(shù)據(jù)庫的熟悉度都不可同日而語,通過這次畢業(yè)設(shè)計,不僅充實我的知識結(jié)構(gòu),擴大了我
49、的知識面,增強了我分析問題和解決問題的能力,為我以后的工作打下了良好的基礎(chǔ)。 參考文獻(xiàn) [1]孫衛(wèi)琴,李洪成.Tomcat與JavaWeb開發(fā)技術(shù)詳解.電子工業(yè)出版社,2009年 [2]BruceEckel.Java編程思想.機械工業(yè)出版社,2007 [3]孫一林,彭波.Java數(shù)據(jù)庫編程實例.清華大學(xué)出版社,2003 [4]FLANAGAN.Java技術(shù)手冊.中國電力出版社,2006 [5]LEEANNEPHILLIPS.巧學(xué)活用HTML4.電子工業(yè)出版社,1998 [6]飛思科技產(chǎn)品研發(fā)中心.JSP應(yīng)用開發(fā)詳解.電子工業(yè)出版社,2004年 [7] 鄒含輝,黎加厚.基
50、于社會建構(gòu)主義的網(wǎng)絡(luò)課程管理系統(tǒng)探究——以Moodle課程管理系統(tǒng)為例[J].中小學(xué)電教,2008,(04):20~25 [8] 黎加厚,趙怡.課程管理系統(tǒng)(CMS)及其選擇[J].現(xiàn)代教育技術(shù),2008,(09):30~35王會霞,劉志兵.網(wǎng)絡(luò)課程管理系統(tǒng)的設(shè)計與實現(xiàn)[J].有線電視技術(shù),2007,(08):14~16 [9] 趙國棟,黃永中,林莉.高校課程管理系統(tǒng)的選擇策略研究[J].中國遠(yuǎn)程教育,2008,(01):12~14 [10] 學(xué)生課程管理系統(tǒng)的設(shè)計與實現(xiàn)[J]. 科技資訊, 2006,(31) :30~35 附 錄 1.應(yīng)用框架的加載——Web
51、.xml
52、rEncodingFilter
53、param-name>config
55、e="mail" type="java.lang.String" />
56、
59、
60、
- 溫馨提示:
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. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 統(tǒng)編版選擇性必修下冊《孔雀東南飛》課件
- 案例分析PPT模版
- 民生附加醫(yī)樂保醫(yī)療保險產(chǎn)品主要特色基本形態(tài)投保案例增值服務(wù)介紹課件
- 乳腺癌新輔助化療共識與進(jìn)展課件
- 2021 2022學(xué)年新教材高中物理第2章勻變速直線運動的研究4自由落體運動ppt課件新人教版必修第一冊
- 《公司金融》資本預(yù)算
- 工程安全與結(jié)構(gòu)健康監(jiān)測
- 防水閘門制造取費、工期、質(zhì)量保證工作匯報
- 水處理技術(shù)基礎(chǔ)
- 腘窩囊腫綜述中英文對照-課件
- 平面構(gòu)成基本形
- 奧運福娃簡介
- 課題2元素 (3)
- “相約中秋”流程
- 勞動爭議處理課件