![基于J2EE的網(wǎng)絡(luò)教學(xué)平臺_教學(xué)輔導(dǎo)系統(tǒng)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/12/73740308-fb25-491a-b6ba-4131e60afcb0/73740308-fb25-491a-b6ba-4131e60afcb01.gif)
![基于J2EE的網(wǎng)絡(luò)教學(xué)平臺_教學(xué)輔導(dǎo)系統(tǒng)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/12/73740308-fb25-491a-b6ba-4131e60afcb0/73740308-fb25-491a-b6ba-4131e60afcb02.gif)
![基于J2EE的網(wǎng)絡(luò)教學(xué)平臺_教學(xué)輔導(dǎo)系統(tǒng)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/12/73740308-fb25-491a-b6ba-4131e60afcb0/73740308-fb25-491a-b6ba-4131e60afcb03.gif)
![基于J2EE的網(wǎng)絡(luò)教學(xué)平臺_教學(xué)輔導(dǎo)系統(tǒng)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/12/73740308-fb25-491a-b6ba-4131e60afcb0/73740308-fb25-491a-b6ba-4131e60afcb04.gif)
![基于J2EE的網(wǎng)絡(luò)教學(xué)平臺_教學(xué)輔導(dǎo)系統(tǒng)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/12/73740308-fb25-491a-b6ba-4131e60afcb0/73740308-fb25-491a-b6ba-4131e60afcb05.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、本科生畢業(yè)論文本科生畢業(yè)論文( (設(shè)計(jì)設(shè)計(jì)) )題 目:基于 J2EE 的網(wǎng)絡(luò)教學(xué)平臺-教學(xué)輔導(dǎo)系統(tǒng)學(xué)生姓名: 朱征北 學(xué) 號: 專業(yè)班級: 計(jì)科 06102 指導(dǎo)教師: 王蓉 完成時(shí)間: 2010 年 5 月 目錄目錄目錄 .I摘 要.IVABSTRACT.V第一章 緒 論.11.1 行業(yè)研究現(xiàn)狀 .11.1.1 網(wǎng)絡(luò)教學(xué)平臺的國內(nèi)外發(fā)展?fàn)顩r.11.2 課題研究目的及意義 .21.2.1 課題目的.21.2.2 課題意義.21.3 系統(tǒng)調(diào)研 .31.4 可行性分析 .31.4.1 社會(huì)可行性分析.31.4.2 技術(shù)可行性分析.41.4.3 經(jīng)濟(jì)可行性分析.41.5 研究內(nèi)容 .5第二章 開發(fā)
2、工具及語言特點(diǎn).62.1 JSP 語言.62.2 應(yīng)用服務(wù)器 JBOSS.72.3 數(shù)據(jù)庫 MYSQL STRUST框架原理.82.5 JSPSMARTUPLOAD組件.102.6 JACOB 組件.10第三章 系統(tǒng)需求分析.123.1 系統(tǒng)需求分析 .123.2 系統(tǒng)功能需求 .123.3 系統(tǒng)性能需求 .133.4 系統(tǒng)環(huán)境需求 .133.5 系統(tǒng)角色分析 .133.6 系統(tǒng)用例分析 .143.6.1 教師用例分析.143.6.2 學(xué)生用例分析.163.6.3 管理員用例分析.18第四章 系統(tǒng)設(shè)計(jì).204.1 系統(tǒng)體系結(jié)構(gòu) .204.2 用戶界面設(shè)計(jì) .214.3 頁面間的
3、跳轉(zhuǎn)關(guān)系 .224.4 復(fù)雜業(yè)務(wù)流程分析 .22第五章 系統(tǒng)實(shí)現(xiàn).245.1 系統(tǒng)環(huán)境搭建 .245.2 系統(tǒng)核心類圖 .245.3 數(shù)據(jù)持久層設(shè)計(jì).285.3.1 編寫 PO 類.285.3.2 編寫 Hibernate 映射文件.285.4 WEB 層設(shè)計(jì).305.5 訪問權(quán)限控制 .315.6 解決中文亂碼 .325.7 系統(tǒng)設(shè)計(jì)中的問題及解決方案.335.7.1 界面美觀問題.335.7.2 數(shù)據(jù)類型轉(zhuǎn)換問題.335.7.3 數(shù)據(jù)連接上的問題.34第六章 系統(tǒng)測試.366.1 測試舉例 .366.2 測試方法 .376.3 系統(tǒng)運(yùn)行效果圖 .376.4 系統(tǒng)總結(jié) .416.4.1 系統(tǒng)
4、的特色/優(yōu)點(diǎn)介紹.416.4.2 系統(tǒng)存在的不足.426.4.3 改進(jìn)方案.42第七章 心得體會(huì).43參考文獻(xiàn).45致謝.46附錄.48 摘 要基于 J2EE 的網(wǎng)絡(luò)教學(xué)平臺_教學(xué)輔導(dǎo)系統(tǒng)是實(shí)施 Internet 教育的軟、硬件平臺,平臺的性能與功能直接決定了高校教育的教學(xué)質(zhì)量、教學(xué)手段、學(xué)習(xí)效果與管理水平。論文論述了基于 J2EE 的 MVC 結(jié)構(gòu)與組件技術(shù)的 Web 應(yīng)用系統(tǒng)的系統(tǒng)構(gòu)架,并詳細(xì)討論現(xiàn)代網(wǎng)絡(luò)教育支撐平臺的系統(tǒng)分析、設(shè)計(jì)與關(guān)鍵技術(shù)的實(shí)現(xiàn)。系統(tǒng)采用 UML 分析方法對系統(tǒng)進(jìn)行分析,建立系統(tǒng)的功能模型和對象模型,通過建立模型,能夠更好的全面理解系統(tǒng)。采用框架技術(shù)是Strust+Hi
5、bernate,Strust 為用戶提供美觀的圖形界面,操作簡單。Hibernate 能夠很好地完成數(shù)據(jù)視圖層到存儲層的永久存儲。框架技術(shù)使得系統(tǒng)具有很強(qiáng)的伸縮性、通用性、兼容性和可操作性,每一層能夠?qū)W⒂谔囟ǖ慕巧凸δ?,為系統(tǒng)提供了數(shù)據(jù)自修復(fù)的功能和良性的數(shù)據(jù)吐納機(jī)制,保證了系統(tǒng)穩(wěn)定、可靠的持續(xù)運(yùn)行。 關(guān)鍵字:關(guān)鍵字:J2EE,MVC,Strust,Hibernate Abstract Network teaching platform based on the J2EE for the tutorial system is the implementation of the Intern
6、et education software and hardware platform , the platforms performance and functionality directly determines the quality of teaching in higher education, teaching methods, learning and management level .This paper discusses the J2EE-based MVC structure and component technology framework for Web app
7、lication systems, and discusses in detail of the supporting platform for the modern network education system analysis, design and implementation of key technologies.The system uses the UML analysis methods on system analysis , establish a system of functional model and object model ,through the esta
8、blishment of model, can fully understand the system better .The use of framework technology is Strust + Hibernate, Strust can provide users with attractive graphical interface, easy operation. Hibernate works well with complete data view layer to the storage layer for persistent storage .Frame techn
9、ology allows the system has strong scalability, versatility, compatibility and interoperability, each level will focus on the specific role and function of the data for the system function and healthy self-healing data gateway mechanism ensure the system stable and reliable running. Keywords:Keyword
10、s:J2EE, MVC, Strust, Hibernate 第一章 緒 論1.1 行業(yè)研究現(xiàn)狀1.1.1 網(wǎng)絡(luò)教學(xué)平臺的國內(nèi)外發(fā)展?fàn)顩r大約是在 1996 年底、1997 年初開始出現(xiàn)支持網(wǎng)上教學(xué)的軟件平臺,近年來更是層出不窮。一個(gè)完整地支持基于 Web 教學(xué)的支撐平臺應(yīng)該由三個(gè)系統(tǒng)組成:網(wǎng)上課程開發(fā)系統(tǒng)、網(wǎng)上教學(xué)支持系統(tǒng)和網(wǎng)上教學(xué)管理系統(tǒng),分別完成 Web 課程開發(fā)、Web 教學(xué)實(shí)施和 Web 教學(xué)管理的功能。現(xiàn)在市場上的許多產(chǎn)品都是從這三方面的某一方面發(fā)展起來的,經(jīng)過多年的積累和擴(kuò)展成為可以支持 Web 上課程開發(fā)、教學(xué)傳遞和管理的綜合平臺。比的Authorware 4.0( http:/
11、www. macromedia. com/ software/authorware/)已經(jīng)可以開發(fā)網(wǎng)上課程,與該公司的 Pathware 軟件配合實(shí)現(xiàn)網(wǎng)上教學(xué)。為了適應(yīng)網(wǎng)上課程開發(fā)的需要,Asymetrix 公司為普通用戶和專業(yè)用戶分別推出了 ToolBook II Assistant 和 ToolBook II Instructor (http:/www. 如Authorware 和 ToolBook 都是很著名的多媒體開發(fā)工具,Macromedia 公司products/toolbook2/),與該公司的 Librarian 配合也可以實(shí)現(xiàn)完整的網(wǎng)上教學(xué)。另一類遠(yuǎn)程教學(xué)支撐平臺是從網(wǎng)頁開發(fā)
12、工具和網(wǎng)站建設(shè)工具角度出發(fā),如 Mad Duck技術(shù)公司開發(fā)的 Web course ina Box();還有一類遠(yuǎn)程教學(xué)支撐平臺從網(wǎng)上測試工具發(fā)展而來,如 Allen Communication Inc.的 QuestNet+,與該公司的Designers Edge 軟件配合可以進(jìn)行深入的課程設(shè)計(jì)和分析()。后兩類平臺一般要比第一類平臺更強(qiáng)調(diào)無須學(xué)習(xí)編程,無需掌握 HTML 就可以開發(fā)出所需要的課程,可以滿足網(wǎng)上教學(xué)的常規(guī)要求,只是所開發(fā)的課程有結(jié)構(gòu)雷同、個(gè)性不強(qiáng)、發(fā)揮余地有限的缺點(diǎn)。 Web 作為教學(xué)媒體,其優(yōu)勢不僅在于它是很好的內(nèi)容載體,可以隨時(shí)隨地訪問,還在于它提供了很多交流渠道,可以
13、促進(jìn)師生之間、學(xué)生之間的充分討論,這對于提高教學(xué)質(zhì)量、促進(jìn)學(xué)生高級認(rèn)知能力的開發(fā)是十分重要的。所以,也有一些遠(yuǎn)程教學(xué)平臺是在遠(yuǎn)程會(huì)議系統(tǒng)之上增加了教育管理功能,并逐步向全面支持網(wǎng)上教學(xué)方向擴(kuò)展。如 DataBeam 公司的 DataBeam Learning Server( http:/learning. databeam. com/)。Lotus 的 LearningSpace 是基于 Lotus Domino 框架,提供了學(xué)生與學(xué)生、學(xué)生與教師之間強(qiáng)大的交流功能?,F(xiàn)代網(wǎng)絡(luò)教學(xué)平臺在世界范圍內(nèi)的發(fā)展是非常迅速的,尤其是在美國,由于計(jì)算機(jī)網(wǎng)絡(luò)發(fā)展較早,各方面設(shè)施比較完善,所以網(wǎng)絡(luò)教學(xué)平臺的發(fā)展
14、比較迅速。據(jù)新華社報(bào)道,早在 1996 年,克林頓總統(tǒng)就提出了“教育技術(shù)行動(dòng)” 。行動(dòng)綱領(lǐng)指出:“到 2000 年全美中小學(xué)電腦都將連上信息高速公路,讓每個(gè)孩子都能受到 21 世紀(jì)現(xiàn)代技術(shù)教育。 ”教育行動(dòng)主要包括四個(gè)方面:每個(gè)教室、實(shí)驗(yàn)室和圖書館都連接因特網(wǎng);每個(gè)學(xué)生都能使用電腦;每所學(xué)校都能獲得優(yōu)秀的課程教學(xué)軟件;鼓勵(lì)教師使用現(xiàn)代教育技術(shù)教學(xué)。我國在教育體制、教育方法、教學(xué)模式和教育觀念上同國外特別是同美國相比,雖然存在著很大的差距,但是我們在有些方面也取得了顯著的成績。1998 年 9 月,教育部批準(zhǔn)在清華大學(xué)、浙江大學(xué)、湖南大學(xué)等。 1.2 課題研究目的及意義 1.2.1 課題目的網(wǎng)絡(luò)
15、教學(xué)平臺在數(shù)字化校園中有著很高的地位,教學(xué)輔導(dǎo)系統(tǒng)作為網(wǎng)絡(luò)教學(xué)平臺的一個(gè)分支,在教學(xué)管理中起到一個(gè)不可或缺的作用。因此系統(tǒng)采用 J2EE 開發(fā)平臺,以更好的與現(xiàn)有的網(wǎng)絡(luò)教學(xué)平臺相結(jié)合,為每門課程配備輔助教學(xué)工具,達(dá)到教學(xué)全面管理,高效教學(xué),學(xué)生高效學(xué)習(xí),師生實(shí)時(shí)在線互動(dòng)的目的。 1.2.2 課題意義 隨著網(wǎng)絡(luò)的不斷發(fā)展,網(wǎng)絡(luò)教學(xué)平臺是一個(gè)必不可少的部分,它可與教學(xué)設(shè)施管理結(jié)合實(shí)現(xiàn)傳統(tǒng)課堂教學(xué)與在線教學(xué)的充分結(jié)合。在網(wǎng)絡(luò)教育的環(huán)境中,可以最大限度地發(fā)揮學(xué)生的主動(dòng)性、積極性,既可進(jìn)行個(gè)別教學(xué)又可進(jìn)行協(xié)作教學(xué),還可將二者結(jié)合起來,形成一種全新的網(wǎng)絡(luò)教學(xué)模式。這種教學(xué)模式可以完全按照個(gè)人的需要選擇教學(xué)
16、內(nèi)容、教學(xué)方式、教學(xué)時(shí)間甚至指導(dǎo)教師,這種教學(xué)模式 主要的特點(diǎn)是教師和學(xué)生能夠跨越時(shí)空進(jìn)行實(shí)時(shí)和非實(shí)時(shí)的交互,很易激發(fā)學(xué)生的學(xué)習(xí)興趣,并為學(xué)生實(shí)現(xiàn)探索式、發(fā)現(xiàn)式學(xué)習(xí)創(chuàng)造條件,也是開發(fā)教學(xué)輔導(dǎo)系統(tǒng)的意義所在。1.3 系統(tǒng)調(diào)研 正式開發(fā)網(wǎng)絡(luò)教學(xué)輔導(dǎo)系統(tǒng)之前對傳統(tǒng)的教學(xué)方式,管理模式進(jìn)行調(diào)研是非常必要的,其必要性主要表現(xiàn)在以下幾個(gè)方面。(1)明確用戶的要求,以根據(jù)調(diào)查結(jié)果進(jìn)行可行性分析,確認(rèn)系統(tǒng)的開發(fā)十分可行。 (2)學(xué)校的現(xiàn)行系統(tǒng)可能是手工系統(tǒng),也可能是使用計(jì)算機(jī)的系統(tǒng),無論是何種情況,都要詳細(xì)地調(diào)查現(xiàn)行系統(tǒng)中信息處理的具體情況,系統(tǒng)內(nèi)部功能結(jié)構(gòu),以便設(shè)計(jì)出一個(gè)合理的,好的新系統(tǒng)邏輯模型,為新系統(tǒng)
17、的設(shè)計(jì)工作打好基礎(chǔ),保證整個(gè)系統(tǒng)開發(fā)的質(zhì)量。總之,必要對現(xiàn)行系統(tǒng)進(jìn)行詳細(xì)的調(diào)查,明確用戶需求,保證開發(fā)的新系統(tǒng)的功能與用戶的要求相吻合,避免耗費(fèi)大量的人力,物力,財(cái)力,新系統(tǒng)的開發(fā)卻失敗的悲劇發(fā)生。 1.4 可行性分析可行性分析是在用戶的要求和系統(tǒng)調(diào)研的基礎(chǔ)上進(jìn)行的,對新系統(tǒng)的開發(fā)從社會(huì),技術(shù),經(jīng)濟(jì),管理等方面進(jìn)行分析,并得到新系統(tǒng)的開發(fā)工作可行,不可行,需要修改,追加投資,暫緩開發(fā),分步實(shí)施等方案和結(jié)論,最后完成可行性分析。可行性分析一般可定義為:可行性分析是在建設(shè)在前期對工程項(xiàng)目的一種考察和鑒定,對正在分析中的項(xiàng)目進(jìn)行全面與綜合的技術(shù),經(jīng)濟(jì)能力的調(diào)查,判斷它是否可行。新系統(tǒng)目標(biāo)可行性分析:
18、分析新系統(tǒng)的目標(biāo)是否符合學(xué)校的現(xiàn)狀和發(fā)展的需要。 1.4.1 社會(huì)可行性分析社會(huì)可行性分析:主要是指管理信息系統(tǒng)的開發(fā)是否符合國家法律,下策,是否能夠與社會(huì)大系統(tǒng)實(shí)現(xiàn)良好的對接。隨著計(jì)算機(jī)的發(fā)展與普及,以及互聯(lián)網(wǎng)技術(shù)的擴(kuò)展,日常工作,管理必將實(shí)現(xiàn)無紙化辦公,并且加入到單位內(nèi)部的 Intranet 或者外部網(wǎng)絡(luò),實(shí)現(xiàn)數(shù)據(jù)的共享,這樣有利于各種信息在單位內(nèi)部的查詢,提高了數(shù)據(jù)資源的利用,并且能及時(shí)的得到更新,不需要像過去那樣浪費(fèi)大量的人力物力去進(jìn)行抄寫,提高了工作的效率。1.4.2 技術(shù)可行性分析技術(shù)可行性分析:技術(shù)可行性分析是根據(jù)新系統(tǒng)的目標(biāo)來衡量是否具備所需要的技術(shù),包括系統(tǒng)開發(fā)用戶數(shù)量和水平
19、,硬件方面,軟件方面以及其他應(yīng)用技術(shù)。目前 DBMS 的開發(fā)分為兩種主流模式,一是技術(shù)完全成熟的客戶機(jī)/服務(wù)器(C/S)模式,二是技術(shù)正在發(fā)展且前途無量的瀏覽器/服務(wù)器(B/S)模式。前者也稱兩層結(jié)構(gòu),后者也稱 3 層或多層結(jié)構(gòu)。傳統(tǒng)的 C/S 模式下應(yīng)用系統(tǒng)一般由服務(wù)器(Server)和客戶端應(yīng)用程序(Client App)組成。數(shù)據(jù)一般存放在服務(wù)器上,應(yīng)用程序存放在客戶端計(jì)算機(jī)上。采用 C/S 模式開發(fā)的系統(tǒng)具有信息共享性好、網(wǎng)絡(luò)的信息傳輸量小等優(yōu)點(diǎn),但卻具有不易維護(hù)、用戶操作界面風(fēng)格不一致、能夠處理的數(shù)據(jù)類型不易擴(kuò)展等缺點(diǎn)。隨著基于網(wǎng)絡(luò)的應(yīng)用系統(tǒng)快速發(fā)展,傳統(tǒng) C/S 模式應(yīng)用系統(tǒng)的缺點(diǎn)
20、不斷暴露出來,促使 B/S 模式應(yīng)用系統(tǒng)的產(chǎn)生和發(fā)展。B/S 模式應(yīng)用系統(tǒng)由瀏覽器(Browser)和服務(wù)器(Web Server、Other Server、Middle Ware)組成。數(shù)據(jù)和應(yīng)用程序都存放在服務(wù)器上,瀏覽器功能可以通過下載服務(wù)器上的應(yīng)用程序得到動(dòng)態(tài)擴(kuò)展,服務(wù)器具有多層結(jié)構(gòu),B/S 系統(tǒng)處理的數(shù)據(jù)類型可以動(dòng)態(tài)擴(kuò)展。以 B/S 模式開發(fā)的系統(tǒng)維護(hù)工作集中在服務(wù)器上,客戶端不用維護(hù),操作風(fēng)格比較一致,只要是瀏覽器的合法用戶都可以十分容易地使用。在 B/S 模式下,客戶端的應(yīng)用程序(瀏覽器)并不直接存取數(shù)據(jù)庫中數(shù)據(jù),和數(shù)據(jù)庫打交道的是 Web Server 或其它的應(yīng)用服務(wù)器。用戶
21、首先通過瀏覽器將要檢索的數(shù)據(jù)提交給 Web Server,Web Server 再向數(shù)據(jù)庫服務(wù)器請求數(shù)據(jù)服務(wù),最后Web Server 將得到的數(shù)據(jù)通過 HTTP 協(xié)議以 HTML 代碼返回瀏覽器。B/S 模式開發(fā)的主要任務(wù)在 Web Server 上。其開發(fā)的工具隨 Web Server 的不同而有所區(qū)別。系統(tǒng)中采用 servlet 作為程序流程的控制層,使用 tomcat 作為系統(tǒng)的服務(wù)器。系統(tǒng)主要使用 JSP 技術(shù),在 windows xp 環(huán)境下,使用了 MyEclipse6.5 集成開發(fā)工具來開發(fā)、JBoss5.1 應(yīng)用服務(wù)器來部署運(yùn)行、RationalRose2003 UML 分析
22、工具、PowerDesigner 數(shù)據(jù)庫建模工具來分析系統(tǒng)、MySQL 數(shù)據(jù)庫工具用于管理后臺數(shù)據(jù)。1.4.3 經(jīng)濟(jì)可行性分析經(jīng)濟(jì)可行性分析:主要是對開發(fā)新系統(tǒng)所投入的資金與系統(tǒng)投入使用后所帶來的經(jīng)濟(jì)效益進(jìn)行比較,確認(rèn)新系統(tǒng)是否會(huì)給學(xué)校帶來一定的經(jīng)濟(jì)效益采用傳統(tǒng)的手工輸入方法,不僅工作繁瑣而且需要人力輸入多,記錄容易出錯(cuò),那樣產(chǎn)生了成本高,效率差的弊病,對于一個(gè)學(xué)校的資料庫建立是十分困難和麻煩的。而采用著中國系統(tǒng)所花費(fèi)的成本,精力都遠(yuǎn)遠(yuǎn)低于手工,并且實(shí)用十分方便,更新也簡易,每個(gè)部門只需一個(gè)人統(tǒng)一管理,對于學(xué)校實(shí)現(xiàn)辦公無紙化能起到很大的作用。所以此系統(tǒng)經(jīng)濟(jì)可行性也具備了。1.5 研究內(nèi)容論文主
23、要分七章。每個(gè)章節(jié)的主要內(nèi)容如下:第一章緒論,主要介紹了開發(fā)系統(tǒng)的目的和意義,網(wǎng)絡(luò)教學(xué)平臺的調(diào)研以及可行性的分析。第二章開發(fā)工具及語言特點(diǎn),主要介紹開發(fā)工具和使用的開發(fā)語言以及特點(diǎn),數(shù)據(jù)庫技術(shù)和組件技術(shù)。第三章系統(tǒng)需求分析,主要介紹系統(tǒng)的需求分析。進(jìn)行系統(tǒng)的需求分析時(shí)主要描述系統(tǒng)的用戶需求,功能,性能環(huán)境的分析。第四章系統(tǒng)設(shè)計(jì),主要介紹系統(tǒng)設(shè)計(jì)。主要包括系統(tǒng)體系結(jié)構(gòu),用戶界面的設(shè)計(jì)和負(fù)責(zé)業(yè)務(wù)流程的分析。第五章系統(tǒng)實(shí)現(xiàn),主要介紹系統(tǒng)的實(shí)現(xiàn),包括環(huán)境的搭建,類圖實(shí)現(xiàn)和 DAO組件設(shè)計(jì), web 層設(shè)計(jì),中文亂碼解決等內(nèi)容,以及在系統(tǒng)的開發(fā)過程中遇到的困難以及解決的方法。第六章系統(tǒng)測試,主要描述系統(tǒng)
24、的測試,測試的舉例,測試項(xiàng)目,以及在測試中遇到的問題,系統(tǒng)的不足以及還需改進(jìn)的地方。第七章心得體會(huì),主要是系統(tǒng)在開發(fā)過程中的心得體會(huì)。第二章 開發(fā)工具及語言特點(diǎn)系統(tǒng)技術(shù)框架采用 Strust1.2 + Hibernate3.0 框架技術(shù)。為了提高工作效率以及系統(tǒng)后期的可維護(hù)性,在處理具體的業(yè)務(wù)事務(wù)時(shí),采用了 JspSmartUpload 組件來管理文件的上傳與下載。為了更加快捷地閱讀各種資源文件,系統(tǒng)采用了JACOB 組件,使 Word、Excel、文本文件直接轉(zhuǎn)換成 HTML 格式,使用瀏覽器直接打開閱讀,為用戶節(jié)省時(shí)間,免去了下載后再打開,長時(shí)間等待等繁瑣的操作。為了使教師更好地辦公,系統(tǒng)
25、采用了在線編輯器 FCKeditor,為教師的工作提供簡便,快捷及高效的操作。開發(fā)過程中所用到的重要開發(fā)工具有:MyEclipse6.5 集成開發(fā)環(huán)境、應(yīng)用服務(wù)器 Jboss5.1、數(shù)據(jù)庫服務(wù)器 MySQL5.0 以及數(shù)據(jù)庫建模工具 PowerDesiner12。2.1 JSP 語言 JSP 就是 Java,只是它是一個(gè)特別的 Java 語言,加入了一個(gè)特殊的引擎,這個(gè)引擎將 HTTPServlet 這個(gè)類的一些對象自動(dòng)進(jìn)行初始化讓用戶使用,而用戶不用再去操心前面的工作。同時(shí)這個(gè)引擎又引入了jsp:*、Java Servlet Code(.java 文件)-Java Runtime Bin C
26、ode(.class文件),這就是為什么我們第一次運(yùn)行 JSP 時(shí) CPU 占用率能達(dá)到很高的原因,它實(shí)際上是調(diào)用了 JSP 引擎來生成 Java 文件,再用 Javac 來編譯它到 class 文件,這才能去執(zhí)行它。JSP 技術(shù)使用 Java 編程語言編寫類 XML 的 tags 和 scriptlets,來封裝產(chǎn)生動(dòng)態(tài)網(wǎng)頁的處理邏輯。網(wǎng)頁還能通過 tags 和 scriptlets 訪問存在于服務(wù)端的資源的應(yīng)用邏輯。JSP 的特點(diǎn)是將網(wǎng)頁邏輯與網(wǎng)頁設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于 Web 的應(yīng)用程序的開發(fā)變得迅速和容易。 因此,選用 JSP 技術(shù)作為系統(tǒng)的客戶端開發(fā)語言是
27、符合要求的,也是 J2EE 技術(shù)框架中必須的。這使得系統(tǒng)具備更多的靈活性,擁有了 Java 語言具備的所有特性,與平臺無關(guān),一次開發(fā),到處執(zhí)行的宗旨。此外,系統(tǒng)還采用了 Hibernate 技術(shù)框架,與 JSP 完美結(jié)合,使得各種數(shù)據(jù)的交互變得簡單,靈巧。后臺的數(shù)據(jù)存儲和維護(hù)具有更多的靈活性可拓展性。2.2 應(yīng)用服務(wù)器 JBoss近年來,在 J2EE 應(yīng)用服務(wù)器領(lǐng)域, JBoss 是發(fā)展最為迅速的應(yīng)用服務(wù)器。JBoss 是免費(fèi)的,開放源代碼 J2EE 的實(shí)現(xiàn),它通過 LGPL 許可證進(jìn)行發(fā)布 ,這使得 JBoss 廣為流行。JBoss 是一個(gè)運(yùn)行 EJB 的 J2EE 應(yīng)用服務(wù)器,例如:數(shù)據(jù)庫
28、訪問 JDBC、交互(JTA/JTS)、消息機(jī)制 (JTS)、命名機(jī)制 (JNDI)和管理支持(JMX)。它是開放源代碼的項(xiàng)目,遵循最新的J2EE 規(guī)范。目前的 JBoss 發(fā)布版 2.2.4 實(shí)現(xiàn)了 EJB 1.1 和部分 EJB 2.0 的標(biāo)準(zhǔn)、JMS 1.0.1、Servlet 2.2、JSP 1.1、JMX 1.0、JNDI 1.0、JDBC 1.2 和 2.0 擴(kuò)充(支持連接池 (Connection Polling)、JavaMail/JAF、JTA 1.0 和 JAAS1.0 標(biāo)準(zhǔn),JBoss是 100%純 Java 實(shí)現(xiàn)能運(yùn)行于任何平臺。 從 JBoss 項(xiàng)目開始至今,它已經(jīng)從
29、一個(gè) EJB 容器發(fā)展成為一個(gè)基于的J2EE 的一個(gè) web 操作系統(tǒng)(operating system for web) ,它體現(xiàn)了 J2EE 規(guī)范中最新的技術(shù),并且它還在 the JavaWorld Editors Choice 2002 評選中獲得“最佳 Java 應(yīng)用服務(wù)器”大獎(jiǎng)。無論是學(xué)習(xí)還是應(yīng)用, JBoss 為我們提供了一個(gè)非常優(yōu)秀的平臺。 另外,JBoss 應(yīng)用服務(wù)器還具有許多優(yōu)秀的特質(zhì) : 它將具有革命性的 JMX 微內(nèi)核服務(wù)作為其總線結(jié)構(gòu);它本身就是面向服務(wù)的架構(gòu)(Service-Oriented Architecture,SOA) ;它還具有統(tǒng)一的類裝載器,從而能夠?qū)崿F(xiàn)應(yīng)
30、用的熱部署和熱卸載能力。 因此,它是高度模塊化的和松耦合的 ,是健壯的、高質(zhì)量的,而且還具有良好的性能。 選擇 Jboss 作為系統(tǒng)運(yùn)行服務(wù)器,無論從現(xiàn)階段的應(yīng)用還是后期業(yè)務(wù)的拓展,都是可行的。2.3 數(shù)據(jù)庫 MySQL5.0 MySQL 是一個(gè)小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典MySQL AB 公司。在 2008 年 1 月 16 號被 Sun 公司收購。而 2009 年,SUN 又被 Oracle 收購.對于Mysql 的前途,沒有任何人抱樂觀的態(tài)度 .目前 MySQL 被廣泛地應(yīng)用在 Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),許多
31、中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL 作為網(wǎng)站數(shù)據(jù)庫。系統(tǒng)的數(shù)據(jù)存儲工具采用 Mysql,足以滿足系統(tǒng)的需求。2.4 Strust 框架原理MVC 即 Model-View-Controller 的縮寫,是一種常用的設(shè)計(jì)模式。MVC 減弱了業(yè)務(wù)邏輯接口和數(shù)據(jù)接口之間的耦合,以及讓視圖層更富于變化。MVC 架構(gòu)的核心思想是:將程序分成相對獨(dú)立,而又能協(xié)同工作的三個(gè)部分。通過使用 MVC 架構(gòu),可以降低模塊之間的搞合,提供應(yīng)用的可擴(kuò)展性。另外, MVC 的每個(gè)組件只關(guān)心組件內(nèi)的邏輯,不應(yīng)與其他組件的邏輯混合。 MVC 的工作原理,如下圖 2.1 所示: Struts 是 MVC 的
32、一種實(shí)現(xiàn),它將 Servlet 和 JSP 標(biāo)記(屬于 J2EE 規(guī)范)用作實(shí)現(xiàn)的一部分。Struts 繼承了 MVC 的各項(xiàng)特性,并根據(jù) J2EE 的特點(diǎn),做了相應(yīng)的變化與擴(kuò)展。Struts 的工作原理,如下圖 2.2 所示: 圖 2.1 原理圖 控制:從上圖可以看到有一個(gè) XML 文件 Struts-config.xml,與之相關(guān)聯(lián)的是Controller,在 Struts 中,承擔(dān) MVC 中 Controller 角色的是一個(gè) Servlet,叫ActionServlet。ActionServlet 是一個(gè)通用的控制組件。這個(gè)控制組件提供了處理所有發(fā)送到 Struts 的 HTTP 請
33、求的入口點(diǎn)。它截取和分發(fā)這些請求到相應(yīng)的動(dòng)作類(這些動(dòng)作類都是 Action 類的子類)。另外控制組件也負(fù)責(zé)用相應(yīng)的請求參數(shù)填充 Action From(通常稱之為 FromBean),并傳給動(dòng)作類(通常稱之為ActionBean)。動(dòng)作類實(shí)現(xiàn)核心商業(yè)邏輯,它可以訪問 JavaBean 或調(diào)用 EJB。最后動(dòng)作類把控制權(quán)傳給后續(xù)的 JSP 文件,后者生成視圖。所有這些控制邏輯利用struts-config.xml 文件來配置。視圖:主要由 JSP 生成頁面完成視圖,Struts 提供豐富的 JSP 標(biāo)簽庫: Html,Bean,Logic,Template 等,這有利于分開表現(xiàn)邏輯和程序邏輯。
34、模型:模型以一個(gè)或多個(gè) JavaBean 的形式存在。這些 bean 分為三類:Action Form、Action、JavaBean or EJB。Action Form 通常稱之為 FormBean,封裝了來自于 Client 的用戶請求信息,如表單信息。Action 通常稱之為 ActionBean,獲取從 ActionSevlet 傳來的 FormBean,取出 FormBean 中的相關(guān)信息,并做出相關(guān)的處理,一般是調(diào)用 Java Bean 或 EJB 等。流程:在 Struts 中,用戶的請求一般以*.do 作為請求服務(wù)名,所有的*.do 請求均被指向 ActionSevlet,A
35、ctionSevlet 根據(jù) Struts-config.xml 中的配置信息,將用戶請求封裝成一個(gè)指定名稱的 FormBean,并將此 FormBean 傳至指定名稱的ActionBean,由 ActionBean 完成相應(yīng)的業(yè)務(wù)操作,如文件操作,數(shù)據(jù)庫操作等。每一個(gè)*.do 均有對應(yīng)的 FormBean 名稱和 ActionBean 名稱,這些在 Struts-config.xml 中配置。圖 2. 原理圖核心:Strust 的核心是 ActionServlet,ActionServlet 的核心是 strust-config.xml。采用 Strust 框架將整個(gè)系統(tǒng)的應(yīng)用開發(fā)分隔為三層
36、,降低了各層之間的耦合度,提高了應(yīng)用的可拓展性。采用 Strust 來開發(fā),更符合軟件工程化管理的精神。不同的層各司其職,每一層的組件具有相同的特征,有利于通過工程化和工具化產(chǎn)生管理程序代碼。 2.5 JspSmartUpload 組件 JspSmartUpload 是由 網(wǎng)站開發(fā)的一個(gè)可免費(fèi)使用的全功能的文件上傳下載組件,適于嵌入執(zhí)行上傳下載操作的 JSP 文件中。該組件有以下幾個(gè)重要的特點(diǎn): 1、使用簡單。在 JSP 文件中僅僅書寫三五行 Java 代碼就可以搞定文件的上傳或下載,方便。 2、能全程控制上傳。利用 JspSmartUpload 組件提供的對象及其操作方法,可以獲得全部上傳文
37、件的信息(包括文件名,大小,類型,擴(kuò)展名,文件數(shù)據(jù)等),方便存取。 3、能對上傳的文件在大小、類型等方面做出限制。如此可以濾掉不符合要求的文件。 4、下載靈活。僅寫兩行代碼,就能把 Web 服務(wù)器變成文件服務(wù)器。不管文件在Web 服務(wù)器的目錄下或在其它任何目錄下,都可以利用 JspSmartUpload 進(jìn)行下載。 5、能將文件上傳到數(shù)據(jù)庫中,也能將數(shù)據(jù)庫中的數(shù)據(jù)下載下來。這種功能針對的是 MYSQL 數(shù)據(jù)庫,因?yàn)椴痪哂型ㄓ眯?,所以本文不?zhǔn)備舉例介紹這種用法。 文件上傳下載在系統(tǒng)中應(yīng)用很廣泛,如教師上傳課件、布置新作業(yè)及其學(xué)習(xí)資料,學(xué)生查看教師布置的新作業(yè),下載各種學(xué)習(xí)資料等等,多需要對文件進(jìn)
38、行復(fù)雜的處理。但采用 JspSmartUpload 組件,將使這一業(yè)務(wù)處理變得簡單可行。因此JspSmartUpload 組件在業(yè)務(wù)處理流程中,有著舉足輕重的地位。2.6 JACOB 組件JACOB 是一個(gè) JAVA 和 COM 之間的橋接口。它使得你可以在 Java 中自動(dòng)控制COM 組件。它使用 JNI 通過本地調(diào)用 COM 和 Win32 程序接口。JACOB 是 JAVA-COM Bridge 的縮寫,提供自動(dòng)訪問 com 的功能,也是通過 JNI 功能訪問 Windows 平臺下的 com 組件或者 win32 系統(tǒng)庫。這是一個(gè)開始于 1999 年的開源項(xiàng)目的成果。使用 JACOB
39、可以先編寫 COM 組件,再在 Java 中調(diào)用,這在許多遺留在系統(tǒng)中 COM 組件是常用的,因此,使用 JACOB 對于系統(tǒng)的集成是比較實(shí)用的功能。 JACOB 的本質(zhì)還是使用 JNI 技術(shù)調(diào)用 WINDOS 平臺下的本地方法。Java 程序通過 JACOB 調(diào)用 COM 自動(dòng)化組件的詳細(xì)機(jī)制如圖 2.3 所示。采用了 JACOB 組件與 Window 的 COM 組件有機(jī)結(jié)合,是對 Java 功能的一種延伸,體現(xiàn)了與平臺無關(guān)的特點(diǎn)。在系統(tǒng)中使用 JACOB 也有很多好處,如試卷的生成,各種資源文件的下載閱讀,給用戶提供了簡便的操作,速度快,免去了用戶長時(shí)間等待的煩躁過程。圖 2.3 JAC
40、OB 調(diào)用 COM 制動(dòng)化組件的機(jī)制第三章 系統(tǒng)需求分析需求分析的最根本任務(wù)是確定“為了滿足客戶的需求,系統(tǒng)必須要做什么” 。具體的說,應(yīng)該確定系統(tǒng)必須具有的功能和性能,系統(tǒng)要求的運(yùn)行環(huán)境,必須仔細(xì)分析系統(tǒng)中的資料。首先要通過對現(xiàn)有的系統(tǒng)的詳細(xì)調(diào)研,主要是從系統(tǒng)的角度理解用戶的需要,確定新系統(tǒng)的綜合要求,并提出這些需求的實(shí)現(xiàn)條件以及需求應(yīng)達(dá)到的標(biāo)準(zhǔn),也就是確定新系統(tǒng)要做什么,做到什么程度。這些需求主要分為:用戶需求,功能需求,性能需求,環(huán)境需求。3.1 系統(tǒng)需求分析專門為學(xué)校設(shè)計(jì)的智能化教學(xué)輔導(dǎo)系統(tǒng),智能化管理主要體現(xiàn)在在線考試、練習(xí)、作業(yè)的動(dòng)態(tài)管理和科學(xué)統(tǒng)計(jì)上,可以幫助教師了解每位學(xué)生信息,
41、及時(shí)考察和檢驗(yàn)每一名學(xué)生的學(xué)習(xí)情況?,F(xiàn)有系統(tǒng)的主要特點(diǎn)是:(1)用戶信息入檔:包括教師、學(xué)生和管理員的基本信息,以及學(xué)生的考試成績,與教師的信息留言等都要入檔。如教工號或?qū)W生學(xué)號、用戶名、真實(shí)姓名、用戶權(quán)限等,并可附帶學(xué)生照片。 (2)查詢統(tǒng)計(jì)功能:可單個(gè)字段查找或任意字段組合查詢,查看某個(gè)學(xué)生基本信息、查看考試統(tǒng)計(jì)情況等,查詢統(tǒng)計(jì)結(jié)果顯示在狀態(tài)條明顯位置。(3)多種排序方式:不同的排序方式,快速查看排序結(jié)果,統(tǒng)計(jì)查詢記錄。(4)自定義打印規(guī)格:可自定義打印尺寸、打印方向、表格顏色,任意組合打印項(xiàng)目,編輯打印題頭。3.2 系統(tǒng)功能需求系統(tǒng)是一個(gè)教學(xué)輔導(dǎo)系統(tǒng),管理員通過特定的用戶名和密碼登陸到后
42、臺,在后臺頁面對教師、學(xué)生相關(guān)信息添加、修改、刪除,管理員操作后的員可以及時(shí)瀏覽同時(shí)用戶可以在前臺瀏覽。用戶登錄到用戶界面,通過瀏覽器查看已經(jīng)存在于數(shù)據(jù)庫中的信息,用戶通過系統(tǒng)的查詢功能從數(shù)據(jù)庫中調(diào)出所需要的信息,還可以通過留言的方式將自己獨(dú)到的論點(diǎn)反映給我們管理員,其他用戶可以查閱大家的留言。留言可以直接存入數(shù)據(jù)庫進(jìn)行保存,管理員可以對這些留言進(jìn)行管理,留言可以分頁查詢。教學(xué)輔導(dǎo)系統(tǒng)主要實(shí)現(xiàn)的功能有:用戶管理、考試管理、課程管理、文件管理、作業(yè)管理、經(jīng)典題庫、留言管理、教學(xué)管理、沙場練兵等功能模塊。系統(tǒng)打算設(shè)定管理員與教師和學(xué)生三個(gè)角色。他們登陸到不同的用戶界面,分別進(jìn)行各自的功能。 3.3
43、 系統(tǒng)性能需求給出所開發(fā)的新系統(tǒng)的技術(shù)性能指標(biāo),包括存儲容量限制、運(yùn)行時(shí)間限制、安全保密性等,設(shè)計(jì)時(shí)只是做一個(gè)簡單的教學(xué)輔導(dǎo)系統(tǒng),簡單模擬了一個(gè)教學(xué)環(huán)境所涉及到的人與事,并沒有真實(shí)的數(shù)據(jù),如學(xué)校的實(shí)際規(guī)模,在校師生人數(shù),同時(shí)在線人數(shù)等具體數(shù)據(jù),所以沒有必要進(jìn)行性能需求的分析。3.4 系統(tǒng)環(huán)境需求 這是對系統(tǒng)運(yùn)行以及所處環(huán)境的要求。例如,在硬件方面采用什么機(jī)型、有什么硬件設(shè)備等;在軟件方面,采用什么支持系統(tǒng)運(yùn)行的系統(tǒng)軟件(指操作系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)) 。系統(tǒng)的軟件方面是采用 windows xp 的操作系統(tǒng),開發(fā)系統(tǒng)的工具是 MyEclipse6.5,Mysql5.0 數(shù)據(jù)庫管理系統(tǒng),應(yīng)用服務(wù)器
44、采用的是 JBoss5.1。在硬件方面采用的 pc 機(jī)。3.5 系統(tǒng)角色分析作為一個(gè)教學(xué)輔導(dǎo)系統(tǒng),最基本的用戶要求是能夠進(jìn)行查詢和管理。根據(jù)教學(xué)管理過程中涉及到的各種人員,系統(tǒng)角色重要分為管理員、教師和學(xué)生。管理員:能夠通過輸入關(guān)鍵的字查詢出所需要的信息,對用戶的信息進(jìn)行修改或者刪除該用戶。教師:使用該系統(tǒng)可以高效地完成日常的教學(xué)任務(wù)以及各種考試的統(tǒng)計(jì)和管理。還能夠在線實(shí)時(shí)地與學(xué)生進(jìn)行交流,為學(xué)生答疑。學(xué)生:利用該系統(tǒng),積極主動(dòng)地安排學(xué)習(xí),包括練習(xí),作業(yè)和考試,還可和教師實(shí)時(shí)交流,提高學(xué)習(xí)效率。3.6 系統(tǒng)用例分析用例是關(guān)于用戶和系統(tǒng)之間相互作用的文本性描述,從外部角度描述系統(tǒng)的行為,表達(dá)系統(tǒng)
45、應(yīng)該做什么。也是可以被行為者感受到的、系統(tǒng)的一個(gè)完整的功能。本節(jié)中通過用例與用例規(guī)約描述,來進(jìn)一步說明該系統(tǒng)需求,是下一階段系統(tǒng)設(shè)計(jì)的基礎(chǔ),也是測試用例的重要依據(jù)。 3.6.1 教師用例分析教師在整個(gè)教學(xué)工作中的任務(wù)是比較重的,如信息管理,管理各種性質(zhì)的公告信息,為師生提供動(dòng)態(tài)的消息;文件管理中要上傳各種資源文件,課件和實(shí)驗(yàn)文件等等事務(wù)處理,具體用例如 3.1 圖所示。在用例規(guī)約描述中,由于涉及的用例比較多,只選擇了具有代表性的用例來描述,即選擇課程管理用例來做用例規(guī)約描述。 圖 3.1 教師用例分析圖表 3.1 課程管理用例規(guī)約表用例名稱:課程管理用例 ID:110 角色:教師用例說明:教師
46、使用課程管理功能來完成所擔(dān)任課程的日常管理工作前置條件:教師已經(jīng)成功登錄上教學(xué)輔導(dǎo)系統(tǒng) 基本事件流:1教師請求使用課程管理2系統(tǒng)為教師提供管理界面3. 教師填寫課程概要4. 教師布置或管理實(shí)驗(yàn)內(nèi)容 其它事件流:無異常事件流:無后置條件:無表 3.2 課程概要用例規(guī)約表用例名稱:課程概要用例 ID:111角色:教師用例說明:教師使用課程概要功能來完成教學(xué)內(nèi)容的管理工作前置條件:教師已經(jīng)成功登錄上教學(xué)輔導(dǎo)系統(tǒng) 基本事件流:1. 查看課程介紹2. 查看理論教學(xué) 3查看課外拓展4編輯內(nèi)容其它事件流:無異常事件流:無后置條件:內(nèi)容編輯成功后再課程介紹,理論教學(xué)和課外拓展中立即看到相關(guān)的內(nèi)容表 3.3 實(shí)
47、踐教學(xué)用例規(guī)約表用例名稱:實(shí)踐教學(xué)用例 ID:112 角色:教師用例說明:教師使用實(shí)踐教學(xué)功能來完成課程實(shí)驗(yàn)的管理工作前置條件:教師已經(jīng)成功登錄上教學(xué)輔導(dǎo)系統(tǒng) 基本事件流:1. 查看實(shí)驗(yàn)內(nèi)容2. 新建實(shí)驗(yàn)3. 更新(修改/刪除)實(shí)驗(yàn)其它事件流:無異常事件流:無后置條件:無3.6.2 學(xué)生用例分析學(xué)生用例中,為學(xué)生提供多樣的學(xué)習(xí)方式,使學(xué)習(xí)更加靈活,便捷。包括課程介紹,實(shí)踐教學(xué),沙場練兵等。用例圖如下 3.3 圖所示:圖 3.2 學(xué)生用例圖 同教師用例一樣,學(xué)生的用例規(guī)約也是只選部分用例來進(jìn)行規(guī)約描述,描述如下各表所示:表 3.4 課程介紹用例規(guī)約表用例名稱:課程介紹用例 ID:210角色:學(xué)生
48、用例說明:學(xué)生通過課程介紹功能來了解所選學(xué)課程的相關(guān)信息前置條件:學(xué)生已經(jīng)成功登錄上教學(xué)輔導(dǎo)系統(tǒng) 基本事件流:1 學(xué)生請求使用2 系統(tǒng)提供管理窗口3學(xué)生查看課程的相關(guān)內(nèi)容其它事件流:無異常事件流:無后置條件:無表 3.5 教學(xué)團(tuán)隊(duì)用例規(guī)約表用例名稱:教學(xué)團(tuán)隊(duì)用例 ID:211角色:學(xué)生用例說明:學(xué)生通過教學(xué)團(tuán)隊(duì)功能來了解所選學(xué)課程的教師團(tuán)隊(duì)前置條件:學(xué)生已經(jīng)成功登錄上教學(xué)輔導(dǎo)系統(tǒng) 基本事件流: 查看課程的任課教師隊(duì)伍表 3.6 教學(xué)計(jì)劃用例規(guī)約表用例名稱:教學(xué)計(jì)劃用例 ID:212角色:學(xué)生用例說明:學(xué)生通過教學(xué)計(jì)劃介紹功能來了解所選學(xué)課程教學(xué)計(jì)劃安排前置條件:學(xué)生已經(jīng)成功登錄上教學(xué)輔導(dǎo)系統(tǒng)
49、基本事件流: 查看課程的計(jì)劃安排表 3.7 教學(xué)大綱用例規(guī)約表用例名稱:教學(xué)大綱用例 ID:213角色:學(xué)生用例說明:學(xué)生通過教學(xué)大綱功能來了解所選學(xué)課程的大綱內(nèi)容前置條件:學(xué)生已經(jīng)成功登錄上教學(xué)輔導(dǎo)系統(tǒng) 基本事件流: 查看課程的大綱內(nèi)容,了解課程的知識點(diǎn)表 3.8 課程概述用例規(guī)約表用例名稱:課程概述用例 ID:214角色:學(xué)生用例說明:學(xué)生通過課程概述功能來了解所選學(xué)課程的介紹 前置條件:學(xué)生已經(jīng)成功登錄上教學(xué)輔導(dǎo)系統(tǒng) 基本事件流: 查看課程的概述內(nèi)容,對課程有較為全面的認(rèn)識3.6.3 管理員用例分析管理員在系統(tǒng)重要負(fù)責(zé)的工作是管理用戶的基本信息,包括管理用戶,批量導(dǎo)入用戶和創(chuàng)建單個(gè)用戶。
50、用例圖如圖 3.4 所示:圖 3.3 管理員用例圖表 3.9 用戶管理用例規(guī)約表用例名稱:用戶管理用例 ID:310角色:管理員用例說明:管理員管理用戶的相關(guān)信息前置條件:管理員已經(jīng)成功登錄上教學(xué)輔導(dǎo)系統(tǒng) 基本事件流:1 批量導(dǎo)入用戶信息2 創(chuàng)建單個(gè)用戶3 刪除/修改用戶信息其它事件流:無異常事件流:無后置條件:無表 3.10 excel 導(dǎo)入用例規(guī)約表用例名稱:Excel 導(dǎo)入用例 ID:311角色:管理員用例說明:管理員批量導(dǎo)入用戶信息前置條件:管理員已經(jīng)成功登錄上教學(xué)輔導(dǎo)系統(tǒng) 基本事件流:1 選擇 excel 文件批量導(dǎo)入用戶信息 2上傳文件 其它事件流:無異常事件流:導(dǎo)入的文件不是 e
51、xcel 文件或者文件內(nèi)容的格式不符合規(guī)定時(shí),則不能上傳。轉(zhuǎn)向異常處理后置條件:無表 3.11 添加用戶用例規(guī)約表用例名稱:添加用戶用例 ID:312角色:管理員用例說明:管理員創(chuàng)建一個(gè)用戶前置條件:管理員已經(jīng)成功登錄上教學(xué)輔導(dǎo)系統(tǒng) 基本事件流:1 編輯用戶信息2保存用戶信息其它事件流:無異常事件流:無后置條件:無表 3.12 管理用戶用例規(guī)約表用例名稱:管理用戶 用例 ID:313角色:管理員用例說明:管理員管理用戶信息前置條件:管理員已經(jīng)成功登錄上教學(xué)輔導(dǎo)系統(tǒng) 基本事件流:1 修改用戶信息 2 刪除用戶信息 其它事件流:無異常事件流:無后置條件:無第四章 系統(tǒng)設(shè)計(jì)4.1 系統(tǒng)體系結(jié)構(gòu)本系統(tǒng)
52、采用 Strust+Hibernate 的技術(shù)體系結(jié)構(gòu),還結(jié)合了相關(guān)的組件技術(shù),嚴(yán)格按照 MVC 結(jié)構(gòu)分層。在體系結(jié)構(gòu)中,各種技術(shù)的所屬的位置為:連接構(gòu)件:Strust 中 Actionservlet,作為中央控制器,調(diào)配和連接其它構(gòu)件。處理構(gòu)件:JavaBean、Hibernate、JspSmartUplaod、JACOB 負(fù)責(zé)業(yè)務(wù)處理和數(shù)據(jù)存儲,在系統(tǒng)中工作最為繁瑣,也是核心組件。數(shù)據(jù)構(gòu)件:Strust 中的 ActionForm,承載著用戶發(fā)送過來的各種信息,并將其數(shù)據(jù)移交給處理組件處理。各組件間的關(guān)系如圖 4.1 體系結(jié)構(gòu)圖所示:ClientControllerBusiness log
53、inStrust-config.xmlHibernate:sessionFactoryJspSmartUplaodJACOBActionFormJavaBeanModelJSPFCKeditorrequestforwardresponse4.1 體系結(jié)構(gòu)圖DB:MysqlView 體系結(jié)構(gòu)的另一種表現(xiàn)方式是采用包圖,在包圖中,嚴(yán)格按照 MVC 的思想來劃分,系統(tǒng)中使用到的框架技術(shù)和組件技術(shù)也包含在相應(yīng)的層次結(jié)構(gòu)中。如圖 4.2 體系結(jié)構(gòu)包圖所示:圖 4.2 體系結(jié)構(gòu)包圖 4.2 用戶界面設(shè)計(jì)用戶界面是人與機(jī)之間交流、溝通的層面 ,主要使用在人和機(jī)器的互動(dòng)過程(Human Machine Int
54、eraction)中。用戶界面設(shè)計(jì)的三大原則是:置界面于用戶的控制之下;減少用戶的記憶負(fù)擔(dān);保持界面的一致性。在工作流程上分為結(jié)構(gòu)設(shè)計(jì)、交互設(shè)計(jì)、視覺設(shè)計(jì)三個(gè)部分。結(jié)構(gòu)設(shè)計(jì) Structure Design 界面設(shè)計(jì)的骨架 采用左右結(jié)構(gòu),即左邊選擇,右邊顯示被選中的頁面內(nèi)容,無需刷新或彈出新的窗口,相應(yīng)速度快。交互設(shè)計(jì) Interactive Design 交互設(shè)計(jì)的目的是使產(chǎn)品讓用戶能簡單使用 。用戶使用系統(tǒng)時(shí)每一步操作都有相關(guān)的提示信息,如管理員刪除用戶時(shí)提示是否確認(rèn)刪除該用戶,注銷用戶時(shí)確認(rèn)是否注銷,批量導(dǎo)入的不是excel 文件時(shí)提示導(dǎo)入的文件格式有誤等等,使用戶的每一步操作做到心中有
55、數(shù),操作無誤。視覺設(shè)計(jì)Visual Design 視覺設(shè)計(jì)也是頁面風(fēng)格設(shè)計(jì),目的就是讓用戶愉快地使用系統(tǒng)。系統(tǒng)重要以藍(lán)色、淡藍(lán)色為主色調(diào),給人許多想象的空間,有在追夢一般的美感。界面的背景圖案簡單明了,不拖泥帶水,操作快速簡便。上面是用戶界面設(shè)計(jì)的原則和思想,下面用戶界面設(shè)計(jì)的效果圖。圖 4.3 用戶界面設(shè)計(jì)框架圖 4.3 頁面間的跳轉(zhuǎn)關(guān)系頁面跳轉(zhuǎn)有兩種關(guān)系:一是跳轉(zhuǎn)過程中不需要進(jìn)行相關(guān)的業(yè)務(wù)處理,則直接跳轉(zhuǎn)。二是需要進(jìn)行業(yè)務(wù)處理,此時(shí)需以 .do 的形式將請求發(fā)送給 ActionServlet,讓其將請求信息轉(zhuǎn)發(fā)給相應(yīng)的處理類來處理,然后在選擇合適的視圖來相應(yīng),最終完成跳轉(zhuǎn)的操作。如上節(jié)中的
56、跳轉(zhuǎn)關(guān)系如表 4.1 所示:表 4.1 頁面跳轉(zhuǎn)關(guān)系表源頁面請求方式跳轉(zhuǎn)目的頁面forward: mainindex.jsplogin.jsplogin.doforward: loginlogin.jsp4.4 復(fù)雜業(yè)務(wù)流程分析在系統(tǒng)的所有業(yè)務(wù)處理中,用戶管理模塊的批量導(dǎo)入用戶是較為復(fù)雜的業(yè)務(wù)處理。批量導(dǎo)入的流程圖如圖 4.7 所示:輸入 Excel 文件是否選中DB錯(cuò)誤處理Y讀取文件NExce 文件?分析文件格式Y(jié)N分析文件大小文件2M?NY異常處理是否成功上傳?Y寫入數(shù)據(jù)庫N圖 4.7 批量導(dǎo)入用戶流程圖在導(dǎo)入的過程中,需要做多次的處理工作,首先判斷是否選中文件,判斷的標(biāo)準(zhǔn)為掃描文件,讀取
57、文件的長度,如果長度為零,則判斷為沒有選中文件,進(jìn)行錯(cuò)誤處理。接著判斷文件的格式是否為.xls 后綴的文件,只有 excel 文件才能更好地批量導(dǎo)入用戶信息。隨后判斷文件的大小,文件的大小控制在 2M 以下,這樣可以使系統(tǒng)在掃描讀取數(shù)據(jù)時(shí)提高效率。如果文件過長,則一次處理的時(shí)間也會(huì)相對過長,這樣用戶的很多時(shí)間都在等待,不利于系統(tǒng)的使用。最后檢查文件是否有異常,沒有則將上傳的用戶信息保存到數(shù)據(jù)庫中。第五章 系統(tǒng)實(shí)現(xiàn)系統(tǒng)實(shí)現(xiàn)部分主要討論系統(tǒng)環(huán)境的搭建和具體類圖的實(shí)現(xiàn)。系統(tǒng)實(shí)現(xiàn)需有一個(gè)良好的運(yùn)行環(huán)境,包括兩方面:一是包含各種開發(fā)工具在內(nèi)的軟硬件,一種是采用各種框架技術(shù)支持時(shí)所需的配置文件。配置文件時(shí)
58、框架技術(shù)的核心內(nèi)容,有統(tǒng)籌調(diào)配的作用,同時(shí)也是技術(shù)的難點(diǎn)所在。5.1 系統(tǒng)環(huán)境搭建系統(tǒng)是基于 J2EE 技術(shù)體系開發(fā)的,并采用 Strust 1.2 + Hibernate 3.0 技術(shù)框架支持,還有 JspSmartUpload 和 Jacob 技術(shù)組件。因此,搭建一個(gè)良好有序的運(yùn)行環(huán)境是項(xiàng)目開發(fā)的第一步,也是關(guān)鍵的一步。環(huán)境搭建的步驟如下:1、在 Myeclipse6.5 集成開發(fā)環(huán)境中創(chuàng)建一個(gè) web 工程,命名為 wangljx;2、導(dǎo)入 Strust 1.2 和 Hibernate 3.0 所有相關(guān) jar 包,并在 WEB-INF 下導(dǎo)入 strust-config.xml 文件和
59、在 src 目錄下導(dǎo)入 hibernate.cfg.xml 和perties 配置文件;3、導(dǎo)入 JspSmartUpload 和 JACOB 所在本地 JDK 的安裝目錄下的 bin 和jre/bin 兩個(gè)目錄下放入 JACOB 的動(dòng)態(tài)鏈接庫文件 jacob-1.15-M3-x86.dll;4、配置應(yīng)用服務(wù)器 Jboss5.0,并 Jboss 的 jdk 設(shè)置為上面配置好的 jdk;5、導(dǎo)入數(shù)據(jù)庫連接 jar 包:mysql-connector-java-5.0.8-bin.jar。到此,環(huán)境已搭建成功,為項(xiàng)目的開發(fā)提供必要的環(huán)境支持。5.2 系統(tǒng)核心類圖類圖的設(shè)計(jì)完全按照 MVC 三層架構(gòu)的思想劃分,結(jié)構(gòu)清晰,職責(zé)分明,具有很好的可維護(hù)性和可拓展性。1、用戶登錄類圖:描述用戶登錄系統(tǒng)時(shí)的具體處理流程。如圖 5.1 所示: 圖 5.1 用戶登錄類圖 用戶點(diǎn)擊點(diǎn)擊進(jìn)入系統(tǒng)時(shí),會(huì)產(chǎn)生如下一系列流程:1)用戶的請求以 HTTP 方式傳輸?shù)椒?wù)器上,接受請求的是 ActionServlet.2)ActionServlet 接收到請求后,會(huì)查找 Struts-config.xml 文件來確定服務(wù)器上是否有用戶請求的操作,此處用戶請求操作應(yīng)為登陸操作.如果沒有,則返回一個(gè)用戶請求無效的出錯(cuò)信息。3)當(dāng) ActionServlet 請求找到用戶請求的 LoginAction
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年單組份濕固化純聚氨酯防水涂料項(xiàng)目投資價(jià)值分析報(bào)告
- 2025至2030年凹版印刷油墨刮刀項(xiàng)目投資價(jià)值分析報(bào)告
- 食品行業(yè)配送司機(jī)勞動(dòng)合同
- 2025至2030年P(guān)E漁網(wǎng)項(xiàng)目投資價(jià)值分析報(bào)告
- 2025年管線流量監(jiān)視器項(xiàng)目可行性研究報(bào)告
- 精密儀器承運(yùn)商運(yùn)輸合同
- 車險(xiǎn)理賠申請書
- 工資 申請書 范文
- 轉(zhuǎn)職申請書 范文
- 申請書加為何
- GB 4706.20-2004家用和類似用途電器的安全滾筒式干衣機(jī)的特殊要求
- 無紙化會(huì)議系統(tǒng)解決方案
- 佛教空性與緣起課件
- 上海鐵路局勞動(dòng)安全“八防”考試題庫(含答案)
- 《愿望的實(shí)現(xiàn)》教學(xué)設(shè)計(jì)
- 效率提升和品質(zhì)改善方案
- 中山大學(xué)抬頭信紙中山大學(xué)橫式便箋紙推薦信模板a
- 義務(wù)教育學(xué)科作業(yè)設(shè)計(jì)與管理指南
- 《汽車發(fā)展史》PPT課件(PPT 75頁)
- 常暗之廂(7規(guī)則-簡體修正)
- 反詐騙防詐騙主題教育宣傳圖文PPT教學(xué)課件
評論
0/150
提交評論