基于Struts構(gòu)架的網(wǎng)上教學(xué)資源共享管理系統(tǒng)_第1頁(yè)
基于Struts構(gòu)架的網(wǎng)上教學(xué)資源共享管理系統(tǒng)_第2頁(yè)
基于Struts構(gòu)架的網(wǎng)上教學(xué)資源共享管理系統(tǒng)_第3頁(yè)
基于Struts構(gòu)架的網(wǎng)上教學(xué)資源共享管理系統(tǒng)_第4頁(yè)
基于Struts構(gòu)架的網(wǎng)上教學(xué)資源共享管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩37頁(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、摘 要基于網(wǎng)絡(luò)的教育資源共享,給廣大師生提供了方便,滿足了個(gè)性化學(xué)習(xí)的需求。本文利用 Struts 框架設(shè)計(jì)開(kāi)發(fā)一個(gè)基于Web的網(wǎng)上教學(xué)資源共享管理系統(tǒng)。本系統(tǒng)使用My SQL Server管理系統(tǒng)的數(shù)據(jù)信息,采用Struts框架使系統(tǒng)更簡(jiǎn)化地遵循MVC設(shè)計(jì)模式,實(shí)現(xiàn)表示層、業(yè)務(wù)層和控制層相分離,提高了系統(tǒng)開(kāi)發(fā)的效率,也為以后系統(tǒng)的維護(hù)和擴(kuò)展帶來(lái)方便。系統(tǒng)測(cè)試結(jié)果表明:系統(tǒng)通過(guò)身份驗(yàn)證,正確識(shí)別用戶權(quán)限,進(jìn)入不同顯示頁(yè)面。管理員可管理所有用戶信息和用戶上傳的資源。普通用戶可管理本人信息和本人上傳的資源,并可搜索下載系統(tǒng)中的資源。游客可以瀏覽頁(yè)面,搜索下載公有的資源。系統(tǒng)不僅提供豐富的學(xué)習(xí)資源,

2、還有可以管理好各種資源和用戶的關(guān)系。系統(tǒng)運(yùn)用于校園網(wǎng),滿足多用戶同時(shí)訪問(wèn),更好的實(shí)現(xiàn)教育資源共享,具有一定是研究?jī)r(jià)值和應(yīng)用前景。關(guān)鍵字Servlet;JSP; MVC; Struts;共享Abstract The sharing of teaching resources in Internet filled our need for personality. There is something about how to develop a realization of sharing management system for online teaching resources based

3、 on wed. The data of system is managed by My SQL Server. Because of using Struts architecture, it will be easy to display the view, he model, and the controller. Then, it will be not only increase in the sleep of developing but also can we manager and expend the system. The results show that, there

4、are three kinds of members in the system, and the system will show different view for different kind of members. Managers can delete and modify the information of other members and all of the resources. The common users can modify the information of themselves and the resources which they has been u

5、ploaded yet. Besides, they can search for the resources which they want to, and then download the resources. Other members can look at the view of the system, and download some resources which are public. Our system not only can provide the rich of studying resources, but also can manage the relatio

6、nship of each member. Many students might visit the system together if their pc can connect to the Internet .So it has a certain appliance value in the area of school teaching.KeywordServlet;JSP; MVC; Struts;Sharing目 錄引 言11 概述21.1 Servlet概述21.2 JSP概述21.3 MVC概述21.4 Struts概述31.5 系統(tǒng)開(kāi)發(fā)的環(huán)境和工具41.6 系統(tǒng)開(kāi)發(fā)完成情

7、況52 需求分析52.1 需求52.2 分析63 網(wǎng)上教學(xué)資源共享系統(tǒng)的設(shè)計(jì)93.1 總體設(shè)計(jì)93.2 功能設(shè)計(jì)113.3 數(shù)據(jù)流圖113.4 數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)123.5 數(shù)據(jù)字典154 系統(tǒng)實(shí)現(xiàn)164.1 實(shí)現(xiàn)效果164.2 用戶表示層184.3 數(shù)據(jù)持續(xù)層244.4 業(yè)務(wù)邏輯層274.5 控制處理層285 測(cè)試檢驗(yàn)315.1 注冊(cè)模塊測(cè)試315.2 管理員管理用戶模塊測(cè)試315.3 用戶上傳資源模塊測(cè)試33結(jié) 論36參考文獻(xiàn)37致 謝38引 言Internet是目前世界上最大的計(jì)算機(jī)互聯(lián)網(wǎng)絡(luò),它遍布全球,將世界各地各種規(guī)模的網(wǎng)絡(luò)連接成一個(gè)整體。我們的教學(xué)也有了很大得發(fā)展與改革?,F(xiàn)代信息技術(shù)

8、是網(wǎng)絡(luò)教學(xué)的技術(shù)標(biāo)志,而教學(xué)活動(dòng),對(duì)人才的培養(yǎng)則是網(wǎng)絡(luò)教學(xué)的根本。網(wǎng)絡(luò)教學(xué)的問(wèn)題不僅僅是技術(shù)問(wèn)題,其本質(zhì)問(wèn)題仍是教學(xué)問(wèn)題,是培養(yǎng)人的問(wèn)題。是現(xiàn)代信息技術(shù)條件或環(huán)境下培養(yǎng)人的問(wèn)題。對(duì)這些帶有根本性問(wèn)題的把握,就必須以科學(xué)的思想為指導(dǎo),在分析研究學(xué)生實(shí)際情況本著實(shí)事求是得精神,對(duì)網(wǎng)絡(luò)教學(xué)做探索、借鑒、創(chuàng)新等工作。尤其要把創(chuàng)新放在主要地位。認(rèn)真學(xué)習(xí)國(guó)外的經(jīng)驗(yàn),并要結(jié)合本學(xué)校、本課程、學(xué)生的實(shí)際,加以改造應(yīng)用。堅(jiān)持技術(shù)標(biāo)準(zhǔn)的統(tǒng)一與教學(xué)思想和風(fēng)格的多樣化相結(jié)合。而不是技術(shù)標(biāo)準(zhǔn)的多樣化,教學(xué)思想和模式的單一化。要克服那種機(jī)械的、形而上學(xué)地看待網(wǎng)絡(luò)教學(xué)的認(rèn)識(shí),把網(wǎng)絡(luò)教學(xué)僅看成脫離課堂、學(xué)校、教師,一切依靠網(wǎng)

9、絡(luò)所進(jìn)行的學(xué)習(xí)(教學(xué))“ELearning”。其實(shí),這是網(wǎng)絡(luò)教學(xué)的一種方式,或是說(shuō)網(wǎng)絡(luò)教學(xué)應(yīng)用的領(lǐng)域之一?!癊Learning”作為課堂教學(xué)活動(dòng)得有效補(bǔ)充,應(yīng)該受到大家得重視。 網(wǎng)絡(luò)教學(xué)在教學(xué)中所扮演得角色越來(lái)越明確:一方面,計(jì)算機(jī)網(wǎng)絡(luò)為學(xué)習(xí)者提供學(xué)習(xí)資料、工具和創(chuàng)設(shè)學(xué)習(xí)情景,讓他們操作、探索,為提高學(xué)習(xí)者的興趣,調(diào)動(dòng)他們的積極性和主動(dòng)性,培養(yǎng)其創(chuàng)造能力營(yíng)造了良好的信息化環(huán)境。另一方面,計(jì)算機(jī)網(wǎng)絡(luò)有豐富的教學(xué)信息資源,它既可以做到在不割裂學(xué)科系統(tǒng)知識(shí)的情況下,以多媒體的方式表現(xiàn)知識(shí)和經(jīng)驗(yàn);又可以對(duì)學(xué)科的系統(tǒng)知識(shí)進(jìn)行延伸性鏈接,對(duì)不同學(xué)科所涉及的同一對(duì)象給予多角度、多層面的反映。為學(xué)習(xí)者掌握系統(tǒng)

10、知識(shí)提供了書(shū)本無(wú)法比擬的信息化環(huán)境。計(jì)算機(jī)網(wǎng)絡(luò)既能提升學(xué)習(xí)者主體地位,提高其學(xué)習(xí)興趣,培養(yǎng)其主動(dòng)探索問(wèn)題、解決問(wèn)題的能力和技能;又能使他們學(xué)習(xí)和掌握系統(tǒng)的科學(xué)知識(shí)。既可以使學(xué)習(xí)者學(xué)習(xí)系統(tǒng)知識(shí),又可以使他們?cè)趯W(xué)習(xí)過(guò)程中學(xué)會(huì)學(xué)習(xí)。既調(diào)動(dòng)學(xué)習(xí)者的主動(dòng)性,又充分發(fā)揮了教師的主導(dǎo)作用。1 概述Java Web應(yīng)用的核心技術(shù)是Java Server Page 和 Servlet。此外,開(kāi)發(fā)一個(gè)完整的Java Web應(yīng)用還涉及以下概念及技術(shù):lJavaBean組件lEJB組件l自定義JSP標(biāo)簽lXMLlWeb 服務(wù)器和應(yīng)用服務(wù)器1.1 Servlet概述接收用戶由瀏覽器提交的業(yè)務(wù)請(qǐng)求,并把值對(duì)象化,訪問(wèn)業(yè)務(wù)

11、邏輯層完成業(yè)務(wù)邏輯實(shí)體的業(yè)務(wù)處理;將業(yè)務(wù)邏輯實(shí)體的變化以值對(duì)象的方式通知并轉(zhuǎn)向相應(yīng)的JSP。如圖1.1顯示了Servlet容器響應(yīng)用戶請(qǐng)求的過(guò)程。圖1.1 Servlet工作過(guò)程圖1.2 JSP概述JSP(Java Server Page)是由Sun公司在Java語(yǔ)言的基礎(chǔ)上開(kāi)發(fā)出來(lái)的一種動(dòng)態(tài)網(wǎng)頁(yè)制作技術(shù)。當(dāng)JSP容器接受到Web用戶的一個(gè)JSP請(qǐng)求時(shí),對(duì)JSP文件進(jìn)行語(yǔ)法分析并生成Java Servlet源文件,然后對(duì)其編譯。擅長(zhǎng)于流程控制和事務(wù)處理,而通過(guò)Servlet來(lái)生成動(dòng)態(tài)網(wǎng)頁(yè)很不直觀:JSP由HTML代碼和JSP標(biāo)簽構(gòu)成,可以方便地編寫(xiě)動(dòng)態(tài)網(wǎng)頁(yè)。因此在實(shí)際應(yīng)用中,采用Servlet

12、來(lái)控制業(yè)務(wù)流程,而采用JSP來(lái)生成動(dòng)態(tài)網(wǎng)頁(yè)。 1.3 MVC概述MVC是Model-View-Controller的簡(jiǎn)稱,即模型試圖控制器。MVC是一種設(shè)計(jì)模式,它強(qiáng)制地把應(yīng)用程序的輸入、處理和輸出分開(kāi)。MVC把應(yīng)用程序分成三個(gè)核心模塊:模型、視圖和控制器。Sun公司先后制定了兩種規(guī)范,稱為JSP Model1和JSP Model2。在這里著重講述Model ,JSP Model2用JSP技術(shù)實(shí)現(xiàn)視圖功能,用Servlet技術(shù)實(shí)現(xiàn)控制器的功能,用JavaBean技術(shù)實(shí)現(xiàn)模型的功能。JSP Model1和JSP Model2的本質(zhì)區(qū)別在于發(fā)出用戶請(qǐng)求并將處理結(jié)果返回用戶。圖1.2為JSP Mod

13、el2體系結(jié)構(gòu)圖:圖1.2 JSP Model2體系結(jié)構(gòu)圖1.4 Struts概述作為對(duì)經(jīng)典的MVC設(shè)計(jì)模式的一種具體實(shí)現(xiàn),Struts是建立在當(dāng)前Java Web應(yīng)用開(kāi)發(fā)領(lǐng)域中JSP 、Servlet、XML等相關(guān)開(kāi)發(fā)技術(shù)基礎(chǔ)之上的一種主流的開(kāi)發(fā)架構(gòu)。是一種基于經(jīng)典MVC設(shè)計(jì)模式的框架。采用Struts可以簡(jiǎn)化遵循MVC設(shè)計(jì)模式的Web應(yīng)用的開(kāi)發(fā)工作,很好的實(shí)現(xiàn)代碼重用,使開(kāi)發(fā)人員從煩瑣的工作中解脫出來(lái),快速開(kāi)發(fā)具有可擴(kuò)展性的Web應(yīng)用??傊琒truts的出現(xiàn)使得Web應(yīng)用的開(kāi)發(fā)過(guò)程大大簡(jiǎn)化,從而能夠縮短開(kāi)發(fā)周期、提高開(kāi)發(fā)效率。圖1.3顯示了Struts實(shí)現(xiàn)的MVC框架:圖1.3 Stru

14、ts 的MVC框架圖在Struts中視圖是一組JSP文件。在這些JSP文件中沒(méi)有業(yè)務(wù)邏輯,也沒(méi)有模型信息,只有標(biāo)簽。此外,通常把Struts框架中的ActionForm Bean也劃分到視圖模塊中。 ActionForm Bean也是一種JavaBean,除了具有一些JavaBean的常規(guī)方法,還包含一些特殊的方法,用于驗(yàn)證HTML表單數(shù)據(jù)之間表單數(shù)據(jù)的傳遞,如圖1.4所示:圖1.4 表單間數(shù)據(jù)傳遞圖Struts框架把用戶輸入的表單數(shù)據(jù)保存在ActionForm Bean 中,把它傳遞給控制器,控制器可以對(duì)ActionForm Bean 中的數(shù)據(jù)進(jìn)行修改,JSP文件使用Struts標(biāo)簽讀取修改

15、后的ActionForm Bean的信息,重新設(shè)置HTML表單。1.5 系統(tǒng)開(kāi)發(fā)的環(huán)境和工具1.5.1 網(wǎng)絡(luò)操作系統(tǒng) 本系統(tǒng)是在Windows XP下開(kāi)發(fā)。Windows XP操作系統(tǒng)支持多種硬件平臺(tái)、多種操作系統(tǒng)互訪、易安裝、內(nèi)置良好的安全措施和先進(jìn)的容錯(cuò)能力,集成了數(shù)碼媒體、無(wú)線網(wǎng)絡(luò)、遠(yuǎn)程網(wǎng)絡(luò)等最新的技術(shù)和規(guī)范,提供網(wǎng)絡(luò)活動(dòng)記錄和追蹤功能。1.5.2 Web服務(wù)器系統(tǒng)軟件 考慮到服務(wù)器系統(tǒng)軟件的安全性、易于管理性和可編程性,本系統(tǒng)選擇Tomcat 5.0服務(wù)器。Tomcat服務(wù)器是當(dāng)今使用廣泛的Servlet/JSP服務(wù)器,它運(yùn)行穩(wěn)定,性能可靠,是學(xué)習(xí)和中小企業(yè)的最佳選擇。1.5.3 數(shù)據(jù)

16、庫(kù)管理系統(tǒng) 本系統(tǒng)的數(shù)據(jù)庫(kù)管理系統(tǒng)采用My SQL Server 4.1。My SQL Server是一個(gè)快速、多用戶、多線程的SQL數(shù)據(jù)庫(kù)服務(wù)器,是一個(gè)客戶/服務(wù)器結(jié)構(gòu)的應(yīng)用。My SQL Server的快速和靈活性足以滿足一個(gè)網(wǎng)站的信息管理工作。數(shù)據(jù)庫(kù)與用戶端之間的接口程序可以使用CGI進(jìn)行通信。1.5.4 系統(tǒng)開(kāi)發(fā)工具 本系統(tǒng)的開(kāi)發(fā)工具使用的是Eclipse 3.2.2,MyEclipse插件。Eclipse 是目前比較流行的開(kāi)源開(kāi)發(fā)工具之一。 綜上所述,從系統(tǒng)功能,普及程度等方面考慮,選擇 Windows XP + Tomcat 5.0 + My SQL Server + Eclips

17、e + JSP 的軟件方案。1.6 系統(tǒng)開(kāi)發(fā)完成情況 系統(tǒng)到目前為止,已經(jīng)完成了登陸注冊(cè)模塊,用戶信息管理模塊,管理員管理模塊,論壇模塊的主要功能。 用戶登陸注冊(cè)模塊已經(jīng)完成用戶通過(guò)注冊(cè)成成功成為會(huì)員,登陸后可以在網(wǎng)站中搜索、下載更多的共享資料的功能。用戶信息管理模塊已經(jīng)完成用戶可以修改個(gè)人資料信息和修改、刪除個(gè)人上傳資源信息的功能。 管理員管理模塊已經(jīng)完成管理員修改用戶信息和系統(tǒng)資源等。 論壇模塊是方便同學(xué)之間,同學(xué)與老師之間交流學(xué)習(xí)的平臺(tái)。2 需求分析2.1 需求2.1.1 現(xiàn)代教育領(lǐng)域的需求隨著信息技術(shù)的發(fā)展,現(xiàn)代教育技術(shù)在高校的應(yīng)用也越來(lái)越廣泛。網(wǎng)絡(luò)的普及應(yīng)用,也讓人們方便的獲得各種資

18、源。針對(duì)隨之出現(xiàn)的教育資源的管理、共享等問(wèn)題,提出了網(wǎng)上教育資源共享系統(tǒng)的設(shè)計(jì)的需求。網(wǎng)上教育資源共享系統(tǒng)是一個(gè)教育單位不可缺少的部分,是一個(gè)實(shí)現(xiàn)教育資源共享,方便學(xué)生和老師,學(xué)生與學(xué)生之間的相互交流學(xué)習(xí)的工具。2.1.2 用戶學(xué)生對(duì)教學(xué)資源的需求人們生活水平的不斷提高,越來(lái)越多的家庭擁有了自己的個(gè)人電腦。學(xué)生通過(guò)各種不同的方式謀求自身的發(fā)展,網(wǎng)絡(luò)是其中的主要方式之一。網(wǎng)上教學(xué)資源管理系統(tǒng),對(duì)資源進(jìn)行分門(mén)別類(lèi)的管理,學(xué)生在系統(tǒng)中可以迅速的尋找到想要的資源。網(wǎng)絡(luò)的特性,可以滿足多用戶并發(fā)訪問(wèn)資源系統(tǒng),因此,滿足了廣大學(xué)生學(xué)習(xí)的需求,更好地實(shí)現(xiàn)資源共享。2.1.3 不同用戶群對(duì)教學(xué)資源的需求系統(tǒng)的

19、使用群體主要是老師和學(xué)生,老師應(yīng)該具有最高權(quán)限,不僅可以使用系統(tǒng),還應(yīng)管理系統(tǒng),管理學(xué)生用戶。教師根據(jù)多年的教學(xué)經(jīng)驗(yàn),知道學(xué)生需要哪種資源,這樣就可以滿足學(xué)生對(duì)教學(xué)資源的需求。而學(xué)生用戶,根據(jù)網(wǎng)站提供的資源,就可以找到合適自己使用,符合自身發(fā)展的資源。同學(xué)和同學(xué)間,同學(xué)和老師間通過(guò)系統(tǒng)提供的交流平臺(tái)可以相互交流學(xué)習(xí)心得。下面,通過(guò)幾個(gè)用例,說(shuō)明系統(tǒng)的需求功能。(1)用戶管理管理員修改用戶信息、刪除用戶,并負(fù)責(zé)分配權(quán)限。普通用戶修改個(gè)人信息。游客瀏覽網(wǎng)頁(yè)。(2)資源管理資源有公有和私有兩種級(jí)別,公有的資源對(duì)所以用戶開(kāi)放,私有只對(duì)管理員和普通用戶開(kāi)放。資源按照類(lèi)別分類(lèi)存儲(chǔ)如庫(kù)。(3)資源搜索在網(wǎng)站

20、中可以對(duì)資源進(jìn)行按類(lèi)別查詢。在網(wǎng)站中對(duì)資源模糊和精確查詢。(4)資源交流論壇前臺(tái)提供用戶發(fā)貼,回帖,瀏覽文章。后臺(tái)由管理員使用管理論壇、文章。2.2 分析在這個(gè)階段,通過(guò)系統(tǒng)分析達(dá)到開(kāi)發(fā)者和需求者的理解和溝通,不考慮代碼和程序的問(wèn)題,是理解和實(shí)現(xiàn)系統(tǒng)的第一步。2.2.1 需求分析需求分析主要是解決軟件產(chǎn)品應(yīng)該達(dá)到的各項(xiàng)功能要求,即用戶要求做什么。需求分析主要是從最初的非形式化需求到滿足用戶要求的軟件產(chǎn)品的映射過(guò)程。它實(shí)際上是一個(gè)對(duì)用戶意圖不斷進(jìn)行揭示和判斷的過(guò)程,其目的在于細(xì)化、精化軟件的作用范圍,確定擬開(kāi)發(fā)軟件的功能和性能、約束、環(huán)境等。 在此階段,用用例來(lái)捕獲用戶需求。通過(guò)用例,描述對(duì)系統(tǒng)

21、感興趣的外部角色以及對(duì)系統(tǒng)(用例)的功能要求。用例除了被用來(lái)獲取用戶需求外,它還將驅(qū)動(dòng)一下整個(gè)過(guò)程:分析、設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試和配置。第一步分析系統(tǒng)能做什么?誰(shuí)使用系統(tǒng)?這些分別叫做用例(Use case)和角色(Actor)。系統(tǒng)中的涉及到的人員有管理員,普通用戶,游客。系統(tǒng)中的用例有:(1)修改個(gè)人信息。(2)修改個(gè)人上傳資源的屬性。(3)上傳資源。(4)下載資源。(5)對(duì)資源歸類(lèi)儲(chǔ)藏。(6)修改用戶信息。(7)刪除用戶。(8)對(duì)用戶分配權(quán)限。(9)刪除網(wǎng)站資源。(10)發(fā)貼。(11)回貼。(12)瀏覽文章。(13)管理論壇。(14)管理文章。用例圖簡(jiǎn)潔明了,能很簡(jiǎn)練的表達(dá)系統(tǒng)需求,便于溝通和

22、下一步的分析。以下是管理員管理用例的用例圖,如圖2.1圖2.1 管理員管理用例圖在需求分析中,不能只用用例圖來(lái)描述系統(tǒng)需求,圖只是一種輔助的工具,更重要的是將需求文檔化,下面是對(duì)系統(tǒng)用例的詳細(xì)描述:l 管理用戶目標(biāo):實(shí)現(xiàn)用戶管理參與者:管理員前置條件:系統(tǒng)運(yùn)行并登陸事件流:(1)驗(yàn)證用戶是管理員(2)通過(guò)后進(jìn)入管理員頁(yè)面,若失敗轉(zhuǎn)到用戶登陸界面(3)修改用戶信息, 分配用戶權(quán)限(4)刪除用戶(5)資源歸類(lèi)(6)上傳資源(7)修改資源屬性(8)刪除資源(9)管理論壇(10)管理文章可選事件流:無(wú)異常事件:無(wú)普通用戶資源管理用例圖,如圖2.2圖2.2 普通用戶資源管理用例圖l 普通用戶資源管理目標(biāo)

23、:管理個(gè)人資源參與者:普通用戶前置條件:系統(tǒng)運(yùn)行并登陸事件流:(1)上傳資源,填寫(xiě)上傳的資源屬性(2)修改個(gè)人上傳的資源屬性(3)刪除個(gè)人上傳資源(4)搜索資源(5)下載資源可選事件:無(wú)異常事件:無(wú)2.2.2 網(wǎng)上教學(xué)資源共享系統(tǒng)的可行性分析首先是技術(shù)可行性,計(jì)算機(jī)及網(wǎng)絡(luò)技術(shù)等技術(shù)的發(fā)展為Web提供了技術(shù)基礎(chǔ),利用現(xiàn)在比較成熟,流行的JSP語(yǔ)言以及Struts架構(gòu),由My SQL Server作為后臺(tái)數(shù)據(jù)庫(kù)管理利用很方便地在Windows 9x/NT/2000/XP下實(shí)現(xiàn)網(wǎng)上教育資源共享系統(tǒng)。其次是經(jīng)濟(jì)可行性,網(wǎng)絡(luò)空間的應(yīng)用,出現(xiàn)了大量的電子書(shū)籍,軟件工具,呈現(xiàn)了無(wú)紙化的優(yōu)越性,網(wǎng)上教學(xué)資源共

24、享管理系統(tǒng)很好的管理這些資源,提供用戶使用,大量地節(jié)約了各種制造傳統(tǒng)教學(xué)教材的資源,用戶學(xué)習(xí)的空間不再只限制于學(xué)校、圖書(shū)館、教室,在家中都可以獲取大量的資源,節(jié)省了資金和時(shí)間。操作可行性,學(xué)生只需要擁有一臺(tái)連上網(wǎng)的PC機(jī)就可以輕松獲取大量的資源。3 網(wǎng)上教學(xué)資源共享系統(tǒng)的設(shè)計(jì)3.1 總體設(shè)計(jì)3.1.1 UML活動(dòng)關(guān)系圖活動(dòng)關(guān)系圖用于顯示動(dòng)作及結(jié)果。其重點(diǎn)在于描述方法實(shí)現(xiàn)中所完成的工作,以及用例或者對(duì)象中的活動(dòng)。下面是普通會(huì)員進(jìn)入網(wǎng)上教學(xué)資源共享系統(tǒng)時(shí)可以進(jìn)行的操作。具體的UML活動(dòng)如圖3.1所示。管理員進(jìn)入網(wǎng)上教學(xué)資源共享系統(tǒng)時(shí)可以進(jìn)行的操作。具體的UML活動(dòng)如圖3.2所示。圖 3.1普通用戶

25、活動(dòng)關(guān)系圖圖3.2管理員活動(dòng)關(guān)系圖3.1.2 系統(tǒng)組成表3.1所示為構(gòu)成網(wǎng)上教育資源共享管理系統(tǒng)的各個(gè)組件,通過(guò)本表,可以宏觀了解各個(gè)組件的功能。表3.1系統(tǒng)主件功能圖用戶表示層(視圖)控制處理層(控制器)數(shù)據(jù)持續(xù)層業(yè)務(wù)邏輯層(模型 )index.jspregistry.jspmodify.jspupdateRes.jspmanager.jspmanagerUser.jspupload.jspsearchaRes.jspdeleteUser.jsplogin.jspbbsTopicse.jspbbsAnswer.jspLoginAction.javaModifyUserAction.javaR

26、egistryAction.javaAddCategoryAction.javaDeleteCategoryAction.javaSearchResAction.javaUpdateResAction.javaUploadAction.javaStruts-config.xmlWeb.xmlDBConnection.javaDBUtil.javaUserBean.javaResoureBean.javaTopicseBean.javaAnswerBean.java3.2 功能設(shè)計(jì)3.2.1 會(huì)員信息管理實(shí)現(xiàn)網(wǎng)上教學(xué)資源共享管理系統(tǒng)相關(guān)用戶信息的注冊(cè)及身份驗(yàn)證,同時(shí)也提供對(duì)應(yīng)用戶資料的更新。確保

27、用戶信息的有效性,管理員可以查詢對(duì)應(yīng)用戶的信息,并可以改變?cè)撚脩舻臋?quán)限和刪除指定用戶。3.2.2 資源管理用戶可以上傳、下載和搜索資源。用戶可以修改、刪除個(gè)人上傳資源的屬性。管理員可以增加資源種類(lèi),上傳、搜索、刪除、修改所有資源。游客可以下載網(wǎng)站提供為公開(kāi)類(lèi)型的資源。3.2.3 論壇管理用戶通過(guò)在論壇瀏覽文章、發(fā)出、回復(fù)文章的形式和其他同學(xué)交流學(xué)習(xí)的經(jīng)驗(yàn),用戶可以修刪除個(gè)人所發(fā)出和回復(fù)的貼子。管理員在論壇中可以刪除其他用戶文章。游客可以瀏覽文章,但不可以發(fā)出或回復(fù)文章。3.3 數(shù)據(jù)流圖3.3.1 頂層DFD圖如圖3.3圖 3.3 頂層數(shù)據(jù)流圖圖3.3中:1 進(jìn)入網(wǎng)站;2表單審核;3數(shù)據(jù)庫(kù)操作;

28、4獲得資源;3.3.2 0層DFD圖如圖3.4所示:圖3.4總體數(shù)據(jù)流圖3.4 數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)3.4.1 數(shù)據(jù)庫(kù)的需求分析根據(jù)網(wǎng)上教學(xué)資源共享系統(tǒng)的需求,對(duì)數(shù)據(jù)表的設(shè)計(jì)及功能如下:用戶基本信息表:存放用戶的基本信息。資源基本信息表:存放該網(wǎng)站資源的基本信息。資源類(lèi)別信息表:區(qū)分上傳資源的種類(lèi)。論壇信息表:保存論壇的基本資料。3.4.2 數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì) 根據(jù)以上需求分析,在確定了各個(gè)表逐主鍵字段的基礎(chǔ)上,依據(jù)表與表相關(guān)字段的聯(lián)系建立各個(gè)表的關(guān)系,對(duì)應(yīng)如圖3.5圖 3.5 數(shù)據(jù)表關(guān)系圖 其中用戶表中的“id”與資源表中的“userID”對(duì)應(yīng),“userName”與“AuserName”和“Tu

29、serName”對(duì)應(yīng),“TitleId”與“Tid”對(duì)應(yīng)。 網(wǎng)上教育資源共享系統(tǒng)中個(gè)數(shù)據(jù)表的基本結(jié)構(gòu)如下:(1)用戶表表3.2 用戶基本信息表字段名描述類(lèi)型長(zhǎng)度是否允許為空是否主鍵id用戶序號(hào)int11否是username用戶名varchar30否否password密碼varchar30否否stuName用戶姓名varchar50是否stuId用戶學(xué)號(hào)varchar50是否isAdmin權(quán)限tinyint1是否 (2)資源表表3.3資源基本信息表字段名描述類(lèi)型長(zhǎng)度是否允許為空是否主鍵rid資源序號(hào)int否是resName資源名稱varchar50是否resPath資源路徑varchar200是

30、否userID上傳者序號(hào)int是否category資源類(lèi)別varchar30是否grade資源級(jí)別varchar30是否resDesc資源描述text是否resSize資源大小varchar80是否 (3)資源類(lèi)別表表3.4資源類(lèi)別信息表字段名描述類(lèi)型長(zhǎng)度是否允許為空是否主鍵cid類(lèi)別序號(hào)int否是cName類(lèi)別名稱varchar50否否 (4)發(fā)表文章信息表表3.5發(fā)表文章信息表字段名描述類(lèi)型長(zhǎng)度是否允許為空是否主鍵Tid發(fā)表文章序號(hào)int否是Title發(fā)表文章題目varchar100否否Text發(fā)表內(nèi)容varchar1024否否TuserName發(fā)表的用戶varchar30否否Tdate發(fā)

31、表時(shí)間timestamp否(5)回復(fù)文章信息表表3.6回復(fù)文章信息表字段名描述類(lèi)型長(zhǎng)度是否允許為空是否主鍵Aid回復(fù)文章序號(hào)int否是TitleId回復(fù)文章題目序號(hào)varchar100否否AText回復(fù)內(nèi)容varchar1024否否AuserName回復(fù)的用戶varchar30否否Adate回復(fù)時(shí)間timestamp否3.5 數(shù)據(jù)字典表3.7 數(shù)據(jù)字典序號(hào)數(shù)據(jù)項(xiàng)數(shù)據(jù)內(nèi)容1.1Id用戶id1.2userName用戶名1.3password密碼1.4stuName學(xué)生姓名1.5stuID學(xué)號(hào)1.6isAdmin權(quán)限2.1cid資源種類(lèi)id2.2cName資源種類(lèi)名3.1rid資源名id3.2res

32、Name資源名3.3userId上傳資源用戶Id3.4resPath上傳資源的路徑3.5category所屬種類(lèi)3.6grade資源級(jí)別3.7resDesc資源描述3.8resSze資源大小4.1Tid話題id4.2Title話題4.3Text話題內(nèi)容4.4TuserName發(fā)表者用戶名4.5Tdate發(fā)表時(shí)間5.1Aid回復(fù)話題id5.2TitleId回復(fù)話題題目的id5.3AText回復(fù)內(nèi)容5.4Ausername回復(fù)用戶名5.5Adate回復(fù)時(shí)間4 系統(tǒng)實(shí)現(xiàn)4.1 實(shí)現(xiàn)效果打開(kāi)后屏幕中顯示首頁(yè)。如圖 4.1:圖 4.1 原系統(tǒng)首頁(yè) 在此頁(yè)面中,提供用戶登陸界面, 游客可以看到網(wǎng)站提供公共

33、部分的資源,并可以查詢、下載公共資源。登陸后,若為管理員顯示如下頁(yè)面。如圖4.2:圖4.2 管理員登陸后頁(yè)面若為一般用戶,將顯示如下頁(yè)面,如圖4.3:圖 4.3 普通用戶登陸后頁(yè)面 此兩頁(yè)面區(qū)別在于,在導(dǎo)航欄上管理員可以進(jìn)入【管理員頁(yè)面】,普通用戶只能管理,修改本用戶的基本信息和資源。管理員管理所有用戶的信息和資源。當(dāng)普通用戶進(jìn)入修改個(gè)人資料和管理本人上傳資源的頁(yè)面,如圖4.4:圖 4.4 個(gè)人資料和管理本人上傳資源的頁(yè)面 管理員進(jìn)入管理頁(yè)面顯示增加資源類(lèi)別的頁(yè)面如圖4.5:圖4.5 管理員增加資源類(lèi)別頁(yè)面此頁(yè)面可以增加資源類(lèi)別,以方便資源管理歸類(lèi)。4.2 用戶表示層4.2.1 首頁(yè)(inde

34、x.jsp)代碼 <body> <logic:notPresent name="user"> <html:form action="/login.do"> 用戶:<html:text property="userName"/> 密碼:<html:password property="password"/> <html:submit>提交</html:submit> <html:link page="/user/reg

35、istry.jsp">注冊(cè)</html:link> </html:form> </logic:notPresent> <logic:present name="user"> <%UserBean user=(UserBean)session.getAttribute("user"); %> 歡迎登陸,<%=user.getUserName()%>! <a href="/rm/userModify/modify.jsp?id=<%=user.get

36、ID()%>">【用戶信息頁(yè)面】</a> <% if(user.getIsAdmin() %> <html:link page="/manage/manage.jsp">【管理員頁(yè)面】</html:link> <% %> <html:link page="/resource/upload.jsp">【上傳資源】</html:link> <html:link page="/escServlet">【退出】</htm

37、l:link> </logic:present> <hr> 此處提供資源搜索: <%Collection categories=DBUtil.getCategories();request.setAttribute("categories",categories); %> <html:form action="/searchRes.do"> <html:text property="key" value="all"/> <html:select

38、 property="category"> <html:option value="%">-資源種類(lèi)-</html:option> <html:option value="%">-全部-</html:option> <html:options collection="categories" property="value" labelProperty="label"/> </html:select>

39、 <logic:present name="user"> <html:hidden property="grade" value="%"/> </logic:present> <logic:notPresent name="user"> <html:hidden property="grade" value="public"/> </logic:notPresent> <html:submit>

40、;查找</html:submit> </html:form> <hr> 所有公開(kāi)資源:<p> <% Collection resources=new ArrayList(); %> <logic:present name="user"> <% resources=DBUtil.getResources("all"); %> </logic:present> <logic:notPresent name="user"> <%

41、 resources=DBUtil.getResources("public"); %> </logic:notPresent> <% Iterator it=resources.iterator(); ResourceBean resource=new ResourceBean(); while(it.hasNext() resource=(ResourceBean)it.next(); %> <table border="1"> <tr> <td>資源名稱:<%=resource

42、.getResName()%></td> <td><html:link page="<%=resource.getResPath()%>">【下載】</html:link></td> <td>發(fā)布者:<%=DBUtil.getUserNameByUserID(resource.getUserID()%></td> </tr> <tr> <td>資源大?。?lt;%=resource.getResSize()%></

43、td> <td>資源級(jí)別:<%=resource.getGrade()%></td> <td>資源類(lèi)別:<%=resource.getCategory()%></td> </tr> <tr> <td colspan="3"> 資源描述:<%=resource.getResDesc()%></td><tr> </table> <% %> </body>4.2.2 注冊(cè)頁(yè)面(registry.j

44、sp)代碼Registry.jsp頁(yè)面是在游客單擊“注冊(cè)”按扭后,跳轉(zhuǎn)到的頁(yè)面。輸入用戶信息后提交就成為普通用戶。4.2.3 修改用戶信息代碼(modity.jsp)modity.jsp頁(yè)面是用戶修改信息的。若為管理員,管理員除了可以修改本人的信息,還有修改其他人的信息和分配用戶權(quán)限。具體代碼如下: <% String tempID=(String)request.getParameter("id"); UserBean curUser=(UserBean)session.getAttribute("user"); String curUserID

45、=Integer.toString(curUser.getID();boolean curUserIsAdmin = curUser.getIsAdmin(); String userID="" UserBean user=new UserBean(); if(tempID.equals(curUserID) /if(true) /修改用戶為當(dāng)前用戶 user=curUser; userID=curUserID; %> <html:form action="/modifyUser.do"> </html:form> <

46、% else /修改用戶為管理員 user=DBUtil.getUser(Integer.parseInt(tempID); userID=tempID;%> <html:form action="/modifyUser.do"> 用戶類(lèi)型:<html:select property="isAdmin"> <html:option value="<%=Boolean.toString(user.getIsAdmin()%>">-請(qǐng)選擇-</html:option> &l

47、t;html:option value="true">-管理員-</html:option> <html:option value="false">-普通會(huì)員-</html:option> </html:select><br> <html:submit>提交</html:submit> </html:form> <% %> <% Collection resources=DBUtil.getResourcesByUserID(user.

48、getID();/ByUserID(user.getID(); Iterator it=resources.iterator(); while(it.hasNext() ResourceBean resource=new ResourceBean(); resource=(ResourceBean)it.next(); %> <table border="1"> <tr> <td>資源名稱:<%=resource.getResName()%> <html:link page="<%=resource

49、.getResPath()%>">【下載】</html:link> </td> <a href="/rm/userModify/deleteRes.jsp?id=<%=resource.getID()%>&userID=<%=userID%>">【刪除】</a></td> <td><a href="/rm/userModify/updateRes.jsp?id=<%=resource.getID()%>">

50、【修改】</a></td> 4.2.4 用戶刪除個(gè)人資源部分代碼(deleteRes.jsp)deleteRes.jsp頁(yè)面是用戶刪除資源的頁(yè)面。單擊“刪除”就可以刪除上傳的資源。4.2.5 用戶修改資源主要代碼(updateRes.jsp) updaters.jsp頁(yè)面是修改上傳后資源信息的。把要修改的信息填寫(xiě)到對(duì)應(yīng)的文本框,按“提交”就修改成功。4.2.6 管理員管理資源類(lèi)別頁(yè)面代碼(manage.jsp) Manage.jsp頁(yè)面是給管理員管理資源類(lèi)別的,管理員可以添加、刪除資源類(lèi)別。主要代碼如下: 添加資源類(lèi)別:<br> <html:form

51、action="/addCategory.do"> <html:text property="category"/> <html:submit>添加</html:submit> </html:form> <p> 刪除資源類(lèi)別: <%Collection categories=DBUtil.getCategories();request.setAttribute("categories",categories); %> <html:form action

52、="/deleteCategory.do"> <html:select property="category"> <html:option value="">-請(qǐng)選擇-</html:option> <html:options collection="categories" property="value" labelProperty="label"/> </html:select> <html:submi

53、t>刪除</html:submit> </html:form>4.2.7 管理員顯示所有用戶信息頁(yè)面代碼(manageUser.jsp)管理員通過(guò)manageUser.jsp頁(yè)面瀏覽到所以用戶信息,需要修改哪個(gè)用戶,就找到相應(yīng)的用戶行,單擊修改或刪除等。4.2.8 搜索網(wǎng)站資源部分代碼(searchRes.jsp)searchRes.jsp頁(yè)面是實(shí)現(xiàn)資源搜索。在可選框中可以選擇資源的類(lèi)別,在文本框輸入關(guān)鍵字或資源名稱,單擊“搜索”按扭。如下是主要代碼: 搜索到的資源如下:<p> <% Collection resources=(Collectio

54、n)request.getAttribute("searchRes"); Iterator it=resources.iterator(); while(it.hasNext() ResourceBean resource=(ResourceBean)it.next(); %> <table border="1"> <tr> <td>資源名稱:<%=resource.getResName()%></td> <td><html:link page="<%=r

55、esource.getResPath()%>">【下載】</html:link></td> <td>發(fā)布者:<%=DBUtil.getUserNameByUserID(resource.getUserID()%></td> 4.3 數(shù)據(jù)持續(xù)層4.3.1 連接數(shù)據(jù)庫(kù)代碼(DBConnection.java)public class DBConnection public static Connection getConnection()Connection conn=null;tryString driverNam

56、e="com.mysql.jdbc.Driver"String userName="root"String pwd=""String db="rm"String url="jdbc:mysql:/localhost/"+db+"?user="+userName+"&password="+pwd;Class.forName(driverName).newInstance();conn=DriverManager.getConnection(url);catch(Exception e)e.printStackTrace();return conn; 此代碼用于每次頁(yè)面要求連接數(shù)據(jù)庫(kù),通過(guò)調(diào)用Connection getConnection()連接。4.3.2 方法組合部分代碼(DBUtil.java)package common;public class DBUtil public static Collection getCatego

溫馨提示

  • 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)論