軟件構(gòu)件庫管理系統(tǒng)畢業(yè)論文_第1頁
已閱讀1頁,還剩91頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  畢業(yè)設(shè)計(jì)(論文)</b></p><p>  題 目:  軟件構(gòu)件庫管理系統(tǒng) </p><p>  層 次:    本科 </p><p>  專 業(yè):  計(jì)算機(jī)科學(xué)與技術(shù) </p>

2、;<p>  考 號(hào): </p><p>  學(xué) 生:      </p><p>  指導(dǎo)教師:      </p><p>  2008年4 月13日</p><p><b>  軟件構(gòu)件

3、庫管理系統(tǒng)</b></p><p><b>  摘 要</b></p><p>  目前,基于構(gòu)件的軟件開發(fā)是軟件產(chǎn)業(yè)中的熱點(diǎn),它成為解決重復(fù)開發(fā)的問題,提高生產(chǎn)效率和質(zhì)量的現(xiàn)實(shí)可行的途徑。當(dāng)軟件構(gòu)件的數(shù)量達(dá)到一定規(guī)模時(shí),采用構(gòu)件庫管理系統(tǒng)對(duì)其進(jìn)行組織和管理是十分必要的,構(gòu)件庫管理系統(tǒng)的組織和管理水平直接決定著構(gòu)件復(fù)用效率。本文系統(tǒng)的介紹了構(gòu)件庫管理系統(tǒng)的

4、開發(fā)過程,完成了對(duì)構(gòu)件的發(fā)布、查詢、修改以及下載功能,還有對(duì)用戶管理和對(duì)構(gòu)件的評(píng)論管理等功能。采用的技術(shù)是基于JAVA語言的WEB開發(fā)技術(shù),使用Struts框架和Hibernate框架組合,數(shù)據(jù)庫是Microsoft SQLServer 2000</p><p>  關(guān)鍵詞 JAVA語言;軟件構(gòu)件;Struts框架; Hibernate框架;Microsoft SQLServer2000</p>

5、<p>  Software Component Library Management System</p><p><b>  Abstract</b></p><p>  At present, the component-based software development in the software industry is hot, it de

6、veloped to solve the problem of duplication, improve production efficiency and quality of the realistic way. When the number of components to achieve a certain scale, a component library management system and its managem

7、ent is very necessary, component library management system for the organization and management directly determines the efficiency of component reuse. This paper introduces component library</p><p>  Keywords

8、 JAVA; Software Component; STRUTS Framework;</p><p>  HIBERNATE Framework; Microsoft SQL Server 2000</p><p><b>  目 錄</b></p><p><b>  摘 要I</b></p>&l

9、t;p>  AbstractII</p><p><b>  1 緒論1</b></p><p>  1.1 立題背景、目的及意義1</p><p>  1.2 軟件構(gòu)件庫管理系統(tǒng)的發(fā)展情況2</p><p>  1.2.1 國外研究動(dòng)態(tài)2</p><p>  1.2.2 國內(nèi)研究

10、動(dòng)態(tài)3</p><p>  2 系統(tǒng)開發(fā)環(huán)境4</p><p>  2.1 系統(tǒng)服務(wù)器環(huán)境要求4</p><p>  2.1.1 對(duì)硬件的要求4</p><p>  2.1.2 對(duì)軟件的要求4</p><p>  2.2 系統(tǒng)客戶端環(huán)境要求4</p><p>  2.2.1 對(duì)硬件的

11、要求4</p><p>  2.2.2 對(duì)軟件的要求4</p><p>  2.3 開發(fā)工具簡介5</p><p>  2.3.1 Struts框架介紹5</p><p>  2.3.2 Hibernate對(duì)象關(guān)系映射框架介紹5</p><p>  2.3.3 SQL Server 2000 介紹6<

12、/p><p>  2.3.4 系統(tǒng)的開發(fā)平臺(tái)7</p><p>  3 需求分析及可行性研究分析9</p><p>  3.1 需求分析9</p><p>  3.1.1 功能需求9</p><p>  3.1.2 數(shù)據(jù)需求11</p><p>  3.2 系統(tǒng)開發(fā)可行性分析14<

13、/p><p>  3.2.1 經(jīng)濟(jì)可行性15</p><p>  3.2.2 市場可行性15</p><p>  3.2.3 技術(shù)可行性16</p><p>  3.2.4 時(shí)間可行性16</p><p><b>  4 總體設(shè)計(jì)18</b></p><p>  4.

14、1 系統(tǒng)的開發(fā)設(shè)計(jì)思想18</p><p>  4.2 系統(tǒng)功能設(shè)計(jì)19</p><p>  4.2.1 系統(tǒng)的功能模塊劃分19</p><p>  4.2.2 系統(tǒng)的類圖20</p><p>  4.3 數(shù)據(jù)庫設(shè)計(jì)21</p><p><b>  5 具體實(shí)現(xiàn)24</b></p

15、><p>  5.1 查詢構(gòu)件及發(fā)表評(píng)論25</p><p>  5.1.1 查詢構(gòu)件25</p><p>  5.1.2 發(fā)表評(píng)論27</p><p>  5.2 用戶管理模塊實(shí)現(xiàn)29</p><p>  5.2.1 注冊(cè)29</p><p>  5.2.2 登錄30</p>

16、;<p>  5.2.3 忘記密碼32</p><p>  5.2.4 修改密碼33</p><p>  5.2.5 修改個(gè)人資料34</p><p>  5.2.6 發(fā)布構(gòu)件36</p><p>  5.2.7 查詢我的構(gòu)件39</p><p>  5.2.8 查詢構(gòu)件相應(yīng)評(píng)論41</

17、p><p>  5.2.9 刪除構(gòu)件42</p><p>  5.3 管理員管理模塊實(shí)現(xiàn)43</p><p>  5.3.1 超級(jí)管理員管理模塊44</p><p>  5.3.2 構(gòu)件管理員管理模塊47</p><p>  5.3.3 用戶管理員管理模塊49</p><p>  5.3.

18、4 評(píng)論管理員管理模塊49</p><p><b>  結(jié)論51</b></p><p><b>  致 謝52</b></p><p><b>  參考文獻(xiàn)53</b></p><p>  附錄1 英文原文及譯文55</p><p><

19、b>  中文譯文55</b></p><p><b>  英文原文58</b></p><p>  附錄2 程序源代63</p><p><b>  1 緒論</b></p><p>  1.1 立題背景、目的及意義</p><p>  目前,基于構(gòu)件

20、的軟件開發(fā)是軟件產(chǎn)業(yè)中的熱點(diǎn),它成為解決重復(fù)開發(fā)的問題,提高生產(chǎn)效率和質(zhì)量的現(xiàn)實(shí)可行的途徑。當(dāng)構(gòu)件的數(shù)量達(dá)到一定規(guī)模時(shí),采用構(gòu)件庫管理系統(tǒng)對(duì)其進(jìn)行組織和管理是十分必要的,構(gòu)件庫管理系統(tǒng)的組織和管理水平直接決定著構(gòu)件復(fù)用效率。</p><p>  軟件復(fù)用是在軟件開發(fā)中避免重復(fù)勞動(dòng)的解決方案。通過軟件復(fù)用,可以提高軟件開發(fā)的效率和質(zhì)量。近十幾年來,面向?qū)ο蠹夹g(shù)出現(xiàn)并逐步成為主流技術(shù),為軟件復(fù)用提供了基本的技術(shù)支持。

21、軟件復(fù)用研究重新成為熱點(diǎn),被視為解決軟件危機(jī),提高軟件生產(chǎn)效率和質(zhì)量的現(xiàn)實(shí)可行的途徑。當(dāng)前軟件構(gòu)件技術(shù)被視為實(shí)現(xiàn)成功復(fù)用的關(guān)鍵因素之一。</p><p>  軟件構(gòu)件(software component)是可復(fù)用的軟件組成成份,可被用來構(gòu)造其他軟件。它可以是被封裝的對(duì)象類、類樹、一些功能模塊、軟件框架(framework)、軟件構(gòu)架(或體系結(jié)構(gòu) Architectural)、文檔、分析件、設(shè)計(jì)模式(Patter

22、n)等。構(gòu)件分為構(gòu)件類和構(gòu)件實(shí)例,通過給出構(gòu)件類的參數(shù),生成實(shí)例,通過實(shí)例的組裝和控制來構(gòu)造相應(yīng)的應(yīng)用軟件。</p><p>  軟件構(gòu)件庫管理系統(tǒng)的目的,就是對(duì)軟件構(gòu)件的存儲(chǔ)、分類、檢索和管理,為基于構(gòu)件開發(fā)提供了全面支持。軟件工程師可以快速準(zhǔn)確地找到需要的構(gòu)件,同時(shí)發(fā)布自己的構(gòu)件,以達(dá)資源共享。</p><p>  1.2 軟件構(gòu)件庫管理系統(tǒng)的發(fā)展情況</p><p

23、>  1.2.1 國外研究動(dòng)態(tài)</p><p>  1968年NATO軟件工程會(huì)議,Mcllroy在提交會(huì)議的論文《大量生產(chǎn)的軟件構(gòu)件》中,提出了“軟件組裝生產(chǎn)線”的思想。從那以后,采用構(gòu)件技術(shù)實(shí)現(xiàn)軟件復(fù)用,采用“搭積木”的方式生產(chǎn)軟件,成為軟件開發(fā)人員長期的夢想。</p><p>  經(jīng)過這么多年的努力,開發(fā)人員提出了基于構(gòu)件的軟件開發(fā)(CBSD:Component-Based S

24、oftware Development)技術(shù),并且工業(yè)界中一些主要的軟件公司和產(chǎn)業(yè)聯(lián)盟紛紛提出了一些軟件構(gòu)件的建議標(biāo)準(zhǔn)和技術(shù)規(guī)范。目前,主流的軟件構(gòu)件技術(shù)標(biāo)準(zhǔn)有三種:微軟公司的構(gòu)件對(duì)象模型(COM),對(duì)象管理組織(OMG)的公共對(duì)象的請(qǐng)求代理系統(tǒng)結(jié)構(gòu)(CORBA)和太陽微軟系統(tǒng)公司的EJB(Enterprise Java Bean)。它們?yōu)閼?yīng)用軟件的開發(fā)提供了可移植性、異構(gòu)性的實(shí)現(xiàn)環(huán)境和健壯平臺(tái),結(jié)束了面向?qū)ο笾械拈_發(fā)語言混亂的局面,解

25、決軟件復(fù)用在通信、互操作等環(huán)境異構(gòu)的瓶頸問題。</p><p>  在基于構(gòu)件的軟件開發(fā)技術(shù)中,軟件構(gòu)件庫是管理軟件構(gòu)件及促進(jìn)軟件復(fù)用的核心機(jī)制,有效地對(duì)現(xiàn)有構(gòu)件進(jìn)行組織和管理,使構(gòu)件的使用者可以高效而準(zhǔn)確地發(fā)現(xiàn)滿足其需要的可復(fù)用構(gòu)件。軟件構(gòu)件化在發(fā)達(dá)國家已普及,美國軍方與政府已經(jīng)建立了CARDS、ASSET和DARS等多個(gè)大型構(gòu)件庫系統(tǒng),還有上萬個(gè)商業(yè)軟件構(gòu)件(Cots)、近千個(gè)專業(yè)構(gòu)件制作組織和一批商業(yè)構(gòu)件庫

26、運(yùn)作機(jī)構(gòu),形成了幾百億美元的構(gòu)件市場。</p><p>  1.2.2 國內(nèi)研究動(dòng)態(tài)</p><p>  2002年7月,國務(wù)院47號(hào)文將構(gòu)件庫列為影響軟件產(chǎn)業(yè)的重大關(guān)鍵性軟件。2004年4月,科技部、發(fā)改委、商務(wù)部、信息產(chǎn)業(yè)部、國家標(biāo)準(zhǔn)化管理委員會(huì)在“國科發(fā)高字”124號(hào)文中,把發(fā)展“構(gòu)件庫”寫進(jìn)了2005年“加強(qiáng)軟件企業(yè)技術(shù)創(chuàng)新”的目標(biāo)中。</p><p>  

27、在基于Internet的構(gòu)件庫管理系統(tǒng)、可擴(kuò)展的軟件建模系統(tǒng)等方面取得較大進(jìn)展,軟件開發(fā)平臺(tái)已經(jīng)形成了系列化軟件。構(gòu)件庫系統(tǒng)完成了公共和企業(yè)兩級(jí)構(gòu)件庫管理系統(tǒng)的研發(fā),公共構(gòu)件庫已經(jīng)在北京、上海、廣州、沈陽、長沙、鄭州、西安等8個(gè)地區(qū)部署并對(duì)外使用,支持了各地軟件園區(qū)和863軟件專業(yè)孵化器的軟件構(gòu)件庫建設(shè)。</p><p><b>  2 系統(tǒng)開發(fā)環(huán)境</b></p><p

28、>  2.1 系統(tǒng)服務(wù)器環(huán)境要求</p><p>  2.1.1 對(duì)硬件的要求</p><p>  服務(wù)器硬盤空間:數(shù)據(jù)庫空間 360M (DB300M+LOG 60M) 構(gòu)件實(shí)體空間由用戶需求決定 </p><p>  內(nèi)存:不小于 512M </p><p>  推薦使用高性能的工作站,并且推薦配備磁盤陣列</p>

29、<p>  2.1.2 對(duì)軟件的要求</p><p>  Microsoft Windows 2000 Server 操作系統(tǒng)或更高版本</p><p>  Microsoft SQL Server 2000數(shù)據(jù)庫或更高版本</p><p>  Tomcat5.0 Web 服務(wù)器或更高版本</p><p>  2.2 系統(tǒng)客戶端

30、環(huán)境要求</p><p>  2.2.1 對(duì)硬件的要求</p><p>  客戶機(jī):Intel586或更高性能的微機(jī)</p><p>  內(nèi)存:不小于128M</p><p>  2.2.2 對(duì)軟件的要求</p><p>  Microsoft IE 5.0或更高版本的Web瀏覽器</p><p&g

31、t;  2.3 開發(fā)工具簡介</p><p>  2.3.1 Struts框架介紹</p><p>  Struts框架是Apache開源軟件聯(lián)盟(www.apache.org)的一個(gè)開源項(xiàng)目——Jakarta Struts Framework。Struts框架繼承了MVC設(shè)計(jì)模式的特性,遵守了J2EE的Servlet、JSP等技術(shù)規(guī)范,并且根據(jù)J2EE的特點(diǎn)做了相應(yīng)的變化和擴(kuò)展,是J2E

32、E體系架構(gòu)的一種輕量級(jí)實(shí)現(xiàn)。作為一款優(yōu)秀的Java Web應(yīng)用程序的開發(fā)框架,Struts框架憑借其清晰性、靈活性,成為當(dāng)前最為廣泛應(yīng)用的輕量級(jí)Java Web 開發(fā)框架。Struts的工作的原理如圖2-1所示。</p><p>  圖2-1 Struts的工作原理</p><p>  2.3.2 Hibernate對(duì)象關(guān)系映射框架介紹</p><p>  Hib

33、ernate框架是開放源代碼的對(duì)象關(guān)系映射工具(Object-Relational Mapping),是一款基于Java環(huán)境的優(yōu)秀的對(duì)象持久化開發(fā)框架。它根據(jù)O/R(對(duì)象/關(guān)系)映射技術(shù)思想,對(duì)JDBC進(jìn)行了輕量級(jí)封裝,使開發(fā)人員可以使用一種面向?qū)ο蟮姆绞絹聿倏v和管理關(guān)系數(shù)據(jù)庫,所以從技術(shù)本質(zhì)上來說該框架是一種提供面向?qū)ο蟮臄?shù)據(jù)庫服務(wù)中間件。</p><p>  Hibernate框架位于應(yīng)用程序的業(yè)務(wù)化和持久化

34、層,在運(yùn)行時(shí)的體系結(jié)構(gòu)如圖2-2所示。 </p><p>  圖2-2 Hibernate核心接口的層次架構(gòu)關(guān)系</p><p>  Hibernate的核心接口一共有5個(gè),分別為:Session、Session Factory、Transaction、Query和Configuration。通過這些接口,不僅可以對(duì)持久化對(duì)象進(jìn)行存取,還能夠進(jìn)行事務(wù)控制。</p><

35、p>  2.3.3 SQL Server 2000 介紹</p><p>  Microsoft SQL Server 2000 數(shù)據(jù)庫在分析服務(wù)、數(shù)據(jù)轉(zhuǎn)化服務(wù)、數(shù)據(jù)倉庫等方面引入了大量新特性。它為Web標(biāo)準(zhǔn)提供了強(qiáng)勁的支持,并為系統(tǒng)管理和調(diào)整提供了很多有力的工具。</p><p>  對(duì)于FoxPro、Access等數(shù)據(jù)庫而言,SQL Server是一個(gè)功能完備的正規(guī)數(shù)據(jù)庫管理系統(tǒng)

36、。SQL Server2000繼承了數(shù)據(jù)庫軟件設(shè)計(jì)引擎方面的優(yōu)勢,已經(jīng)成為新一代網(wǎng)絡(luò)應(yīng)用程序的最佳數(shù)據(jù)庫和分析解決方案之一。作為Microsoft.NET Enterprise Servers的核心組件,它將減少電子商務(wù)、在線商務(wù)和數(shù)據(jù)倉儲(chǔ)應(yīng)用程序推向市場時(shí)間,并對(duì)需要的環(huán)境提供可靠的支持。SQL Server2000對(duì)XML和HTTP提供充分的支持;提供分割裝載和確保時(shí)間的特性;提供先進(jìn)的管理和協(xié)調(diào)機(jī)制,可以自動(dòng)管理線和任務(wù),降低總體

37、開銷。另外,SQL Server2000充分利用了Windows 2000的功能,包括支持活動(dòng)目錄服務(wù),最多支持32個(gè)處理器和64GB的內(nèi)存。它還包括支持開發(fā)引擎、標(biāo)準(zhǔn)的SQL語言、擴(kuò)展的特性等功能,這些是一些大型數(shù)據(jù)庫系統(tǒng)才具備的特性。而存儲(chǔ)過程、觸發(fā)器等特性,也是個(gè)人數(shù)據(jù)庫所沒有的??偟膩碚f,SQL Server2000簡單易用,功能全,很適合做開發(fā)使用。</p><p>  2.3.4 系統(tǒng)的開發(fā)平臺(tái)<

38、;/p><p>  根據(jù)前面介紹可以看到Hibenate架構(gòu)只具備數(shù)據(jù)持久化設(shè)計(jì)能力,而Struts架構(gòu)則在模型設(shè)計(jì)方面能力薄弱,所以將二者結(jié)合起來使用,共同搭建系統(tǒng)結(jié)構(gòu)實(shí)現(xiàn)Model-View-Contral模型設(shè)計(jì),可以達(dá)到二者優(yōu)勢互補(bǔ),從而使系統(tǒng)設(shè)計(jì)具備低耦合性以及較高的可維護(hù)性和可擴(kuò)展性。</p><p>  本系統(tǒng)就是采用這個(gè)思想來開發(fā)的,用Struts框架實(shí)現(xiàn)視圖和控制設(shè)計(jì),用Hi

39、bernate實(shí)現(xiàn)模型設(shè)計(jì)。在具體的設(shè)計(jì)過程中,采用“簡單工廠設(shè)計(jì)模式”,將二者完整地結(jié)合起來,使系統(tǒng)符合到了“低耦合、高內(nèi)聚”的程序設(shè)計(jì)要求,這樣程序模塊清晰,容易理解,具有很高的復(fù)用價(jià)值。下面是用圖來描述本系統(tǒng)的體系結(jié)構(gòu)如圖2-3所示。</p><p>  圖2-3 系統(tǒng)體系結(jié)構(gòu)圖</p><p>  3 需求分析及可行性研究分析</p><p>  基于構(gòu)件的

40、軟件開發(fā)技術(shù),在我國有了初步發(fā)展,國家已經(jīng)在北京、上海、廣州、沈陽、長沙、鄭州、西安等8個(gè)地區(qū)建立公共軟件構(gòu)件庫并對(duì)外使用。構(gòu)件庫系統(tǒng)通過對(duì)可復(fù)用構(gòu)件的分類、管理、存儲(chǔ)和檢索,為面向復(fù)用和基于復(fù)用的軟件開發(fā)過程提供全面的支持。 </p><p>  本文所設(shè)計(jì)的軟件構(gòu)件庫管理系統(tǒng)包括如下功能:用戶管理、構(gòu)件發(fā)布、構(gòu)件查詢、構(gòu)件下載等。支持構(gòu)件的使用者可以高效而準(zhǔn)確地發(fā)現(xiàn)滿足其需要的可復(fù)用構(gòu)件,從而提高構(gòu)件的復(fù)用效

41、率。</p><p><b>  知識(shí)點(diǎn):</b></p><p>  Struts+Hibernate框架的使用</p><p>  SQL Server2000數(shù)據(jù)庫設(shè)計(jì)</p><p><b>  構(gòu)件的分類</b></p><p><b>  構(gòu)件的存儲(chǔ)&l

42、t;/b></p><p><b>  構(gòu)件的查詢</b></p><p>  Office Visio畫圖軟件的應(yīng)用                                                                                                                           

43、                                             </p><p><b>  3.1 需求分析</b></p><p>  3.1.1 功能需求</p><p>  根據(jù)分析可以確定系統(tǒng)有兩類參與者普通用戶和管理員,管理員分為用戶管理員、構(gòu)件管理員、評(píng)論管理員。這兩個(gè)參與者的具體操作如下。</p&

44、gt;<p><b>  用戶的操作</b></p><p>  用戶登錄、用戶注冊(cè)、查詢構(gòu)件、發(fā)表評(píng)論。如圖3-1所示。</p><p>  圖3-1 普通用戶的基本操作用例圖</p><p>  發(fā)表構(gòu)件、修改個(gè)人基本信息、修改密碼、刪除所發(fā)布的構(gòu)件、查詢?cè)u(píng)論。如圖3-2所示。</p><p>  圖3

45、-2 用戶的操作用例圖</p><p><b>  管理員的操作</b></p><p>  管理員對(duì)管理員和用戶的管理:查詢用戶、刪除用戶、添加管理員、刪除管理員、修改管理員權(quán)限。如圖3-3所示。</p><p>  圖3-3 管理員管理用戶的用例圖</p><p>  管理員對(duì)構(gòu)件或評(píng)論管理:查詢構(gòu)件、刪除構(gòu)件、查詢

46、評(píng)論、刪除評(píng)論。如圖3-4所示。</p><p>  圖3-4 管理員管理構(gòu)件或評(píng)論的用例圖</p><p>  3.1.2 數(shù)據(jù)需求</p><p>  軟件構(gòu)件庫系統(tǒng)的開發(fā)目的就是提供給用戶重用構(gòu)件的平臺(tái),即用戶可以發(fā)布自己的構(gòu)件,并且可以查找、下載自己所需的構(gòu)件,以推動(dòng)軟件構(gòu)件化的發(fā)展。</p><p>  由此,系統(tǒng)涉及到的實(shí)體有:普

47、通用戶、管理員、構(gòu)件、評(píng)論。實(shí)體之間有如下聯(lián)系:</p><p>  一個(gè)用戶可以發(fā)布多個(gè)構(gòu)件</p><p>  一個(gè)構(gòu)件可以有多個(gè)評(píng)論</p><p>  系統(tǒng)設(shè)一個(gè)超級(jí)管理員,主要是管理系統(tǒng)中其他管理員</p><p>  不同的管理員有不同的權(quán)限</p><p>  用戶管理員可以管理所有的用戶</p&g

48、t;<p>  構(gòu)件管理員可以管理所有的構(gòu)件以及構(gòu)件的評(píng)論</p><p>  用戶可以管理自己的構(gòu)件</p><p>  用戶可以查詢自己構(gòu)件的評(píng)論</p><p>  經(jīng)過分析畫出E-R圖,如圖3-6所示。</p><p>  圖3-6 實(shí)體關(guān)系圖</p><p>  根據(jù)實(shí)際情況的分析,設(shè)計(jì)出如下實(shí)

49、體及其屬性。</p><p>  普通用戶屬性:用戶ID(personID)、用戶名(userName)、密碼(userPassword)、真實(shí)姓名(trueName)、找回密碼問題(userQues)、問題答案(userAns)、性別(sex)、Email(email)、地址(adress)。如圖3-7所示。</p><p>  圖3-7 普通用戶的屬性</p><p

50、>  管理員屬性:管理員編號(hào)(adminID)、管理員名字(adminName)、密碼(adminPassword)、管理員權(quán)限(power)。如圖3-8所示。</p><p>  圖3-8 管理員的屬性</p><p>  構(gòu)件信息屬性:構(gòu)件ID(componentID)、構(gòu)件名稱(componentName)、構(gòu)件大小(componentSize)、構(gòu)件描述(componentD

51、escribe)、當(dāng)前版本(currentEdition)、封裝類型(encapulationType)、運(yùn)行環(huán)境(runEnvironment)、構(gòu)件來源(componentURL)(提供下載連接)、功能類型(functionType)、國際化支持(nationSustain)、開發(fā)商名字(empolderName)、開發(fā)商主頁(empolderBlog)。如圖3-9所示。</p><p><b> 

52、 圖3-9 構(gòu)件屬性</b></p><p>  構(gòu)件評(píng)論屬性:評(píng)論ID(commentID)、構(gòu)件ID(componentID)、評(píng)論內(nèi)容(commentContent)、評(píng)論時(shí)間(commentDate)。如圖3-10所示。</p><p>  圖3-10 構(gòu)件評(píng)論屬性</p><p>  3.2 系統(tǒng)開發(fā)可行性分析</p><p

53、>  可行性分析是在用戶的要求和系統(tǒng)調(diào)研的基礎(chǔ)上進(jìn)行的,對(duì)新系統(tǒng)的開發(fā)從經(jīng)濟(jì)、市場、技術(shù)、時(shí)間等方面進(jìn)行分析,并得出新系統(tǒng)的開發(fā)工作可行、不可行、需要修改、追加投資、暫緩開發(fā)、分步實(shí)施等方案和結(jié)論,最后完成可行性分析。</p><p>  3.2.1 經(jīng)濟(jì)可行性</p><p>  經(jīng)濟(jì)可行性分析中最重要的內(nèi)容之一是成本——效益分析。對(duì)于一個(gè)基于基本計(jì)算機(jī)系統(tǒng)的研制項(xiàng)目要在經(jīng)濟(jì)方面評(píng)

54、價(jià)其是否合理,成本——效益分析要估計(jì)出研制開發(fā)的花費(fèi)并與收益(包括有形的可以用貨幣計(jì)數(shù)的及無形的利益)衡量比較。</p><p>  目前已有兩臺(tái)PC機(jī)。無須購買新的硬件設(shè)備。只要支付軟件開發(fā)和維護(hù)費(fèi)用,以及人員培訓(xùn)費(fèi)用。系統(tǒng)投入運(yùn)行后,會(huì)及大提高數(shù)據(jù)的管理效率。</p><p>  3.2.2 市場可行性</p><p>  要在軟件系統(tǒng)的開發(fā)過程中有效的實(shí)現(xiàn)復(fù)用

55、,必須要求復(fù)用達(dá)到一定的規(guī)模,必須有大量的可供開發(fā)人員選擇的可復(fù)用構(gòu)件。構(gòu)件的數(shù)量越多,找到合適構(gòu)件的可能性也就越大,應(yīng)用系統(tǒng)的復(fù)用程度也就越高。</p><p>  但是隨著構(gòu)件數(shù)量的增加,如何有效的對(duì)這些構(gòu)件進(jìn)行組織和管理成為了構(gòu)件復(fù)用技術(shù)成敗的關(guān)鍵。如果大量的構(gòu)件沒有被有效的組織和管理起來,那么要在一堆沒有任何結(jié)構(gòu),散亂的構(gòu)件中,找到滿足特定需求的構(gòu)件是一件十分困難的事情。因此,當(dāng)構(gòu)件的數(shù)量達(dá)到一定規(guī)模時(shí),

56、采用構(gòu)件庫對(duì)其進(jìn)行組織和管理是十分必要的,構(gòu)件庫的組織和管理水平直接決定著構(gòu)件復(fù)用的效率。</p><p>  構(gòu)件庫是用于存儲(chǔ),檢索,瀏覽和管理可復(fù)用構(gòu)件的基礎(chǔ)設(shè)施,構(gòu)件庫的組織和管理形式要有利于構(gòu)件的存儲(chǔ)和檢索,其最關(guān)鍵的目標(biāo)是支持構(gòu)件的使用者可以高效而準(zhǔn)確的發(fā)現(xiàn)滿足其需要的可復(fù)用構(gòu)件。 </p><p>  3.2.3 技術(shù)可行性</p><p>  就目前使

57、用的開發(fā)技術(shù)來說系統(tǒng)的功能目標(biāo)能夠達(dá)到;利用現(xiàn)有的技術(shù)在規(guī)定的期限內(nèi)開發(fā)工作能夠完成。</p><p>  從目前市場上比較流行的Web開發(fā)來看,對(duì)于比較簡單的中小型網(wǎng)站的開發(fā)STRUTS框架和HIBERBATE框架組合是一種比較好的解決方案。它為用戶提供了Windows所一貫堅(jiān)持的界面友好、操作簡單無疑是在實(shí)際應(yīng)用中較為成功的用戶界面,簡潔明了的數(shù)據(jù)接口與SQL語句的結(jié)合支持對(duì)數(shù)據(jù)庫進(jìn)行更為復(fù)雜的操作。結(jié)合本項(xiàng)

58、目的實(shí)際情況來看,但是其業(yè)務(wù)流程和數(shù)據(jù)流程還是可以分析清楚的,經(jīng)系統(tǒng)分析可以設(shè)計(jì)出符合實(shí)際需求、易于理解、易于操作、易于維護(hù)的后臺(tái)數(shù)據(jù)庫和前臺(tái)應(yīng)用程序。</p><p>  3.2.4 時(shí)間可行性</p><p>  根據(jù)學(xué)院及導(dǎo)師對(duì)畢業(yè)設(shè)計(jì)的要求,通過具體安排系統(tǒng)開發(fā)時(shí)間如下,并要求自己在每一階段提前完成具體任務(wù)。</p><p><b>  開發(fā)進(jìn)度安

59、排:</b></p><p><b>  前期工作:</b></p><p>  2007/10/22至2007/10/30 確定具體課題題目</p><p>  2007/10/31至2008/01/16 完成課題的調(diào)查研究、可行性分析、設(shè)計(jì)目標(biāo)、需要解決的關(guān)鍵問題、資料收集。</p><p>  2008

60、/01/18至2008/01/22 完成需求分析</p><p>  2008/01/23至2008/02/01完成總體功能設(shè)計(jì)</p><p><b>  后期工作:</b></p><p>  2008/02/18至2008/02/28 系統(tǒng)的編碼設(shè)計(jì)、系統(tǒng)性能測試分析</p><p>  2008/02/28至20

61、08/04/08 完成畢業(yè)設(shè)計(jì)論文的書寫</p><p>  2008/04/12 論文答辯</p><p><b>  4 總體設(shè)計(jì)</b></p><p>  4.1 系統(tǒng)的開發(fā)設(shè)計(jì)思想</p><p>  系統(tǒng)是以瀏覽器/服務(wù)器模式開發(fā)的管理系統(tǒng),系統(tǒng)具備如下功能。</p><p>  系統(tǒng)

62、允許用戶注冊(cè)、登錄、查詢構(gòu)件以及對(duì)構(gòu)件發(fā)表評(píng)論</p><p>  用戶可以發(fā)布構(gòu)件、對(duì)自己注冊(cè)信息管理,對(duì)自己所發(fā)布的構(gòu)件進(jìn)行管理</p><p>  系統(tǒng)中有不同的管理員,包括超級(jí)管理員、用戶管理員、構(gòu)件管理員、評(píng)論管理員</p><p>  系統(tǒng)管理員對(duì)數(shù)據(jù)庫中所有的構(gòu)件管理、對(duì)構(gòu)件的評(píng)論、對(duì)用戶管理,對(duì)管理員的管理</p><p> 

63、 下面是系統(tǒng)的具體部署圖,如圖4-1所示。</p><p>  圖4-1 系統(tǒng)部署示意圖</p><p>  4.2 系統(tǒng)功能設(shè)計(jì)</p><p>  4.2.1 系統(tǒng)的功能模塊劃分</p><p>  根據(jù)對(duì)系統(tǒng)的實(shí)際需求分析,再結(jié)合自己的實(shí)際開發(fā)能力,總結(jié)出系統(tǒng)的總體設(shè)計(jì),明確地劃分出了系統(tǒng)的功能模塊,該系統(tǒng)主要有用戶管理員、管理員管理、

64、構(gòu)件管理、評(píng)論管理這4大模塊組成。各個(gè)模塊的具體實(shí)現(xiàn)功能用方框圖來描述如圖4-2所示。</p><p>  圖4-2 系統(tǒng)的總的功能模塊圖</p><p>  4.2.2 系統(tǒng)的類圖</p><p>  通過對(duì)系統(tǒng)進(jìn)行模塊劃分,明確系統(tǒng)的主要功能。再進(jìn)一步分析,確定系統(tǒng)中的類,以及類與類之間的關(guān)系,下面是系統(tǒng)中涉及的類</p><p>  普

65、通用戶(UserDao) 主要方法:登錄(login)、注冊(cè)用戶(registerPerson)、修改密碼(updatePasswor)、修改用戶(updatePerson)、刪除用戶(deletePerson)、查詢所有用戶(queryGetAll)。</p><p>  管理員(AdminDao) 主要方法:登錄(login)、添加管理員(addAdmin)、修改密碼(updatePassword)、修改權(quán)限

66、(updatePower)、刪除管理員(deleteAdmin)、按用戶名查詢(queryByName)、按權(quán)限查詢(queryByPower)、查詢所有(getAll)。</p><p>  構(gòu)件(ComponentDao) 主要方法:發(fā)布構(gòu)件(addComponent)、按功能類型查詢(getByFunctionType)、按封裝語言查詢(getBy EncapulationLanguage)、模糊查詢(ge

67、tByIndexName)、按用戶ID查詢(getByPersonID)、查詢所有(queryGetAll)、刪除構(gòu)件(deleteComponent)。</p><p>  評(píng)論(CommentDao) 主要方法:發(fā)表評(píng)論(issueComment)、刪除評(píng)論(deleteComment)、按構(gòu)件ID查詢(getByComponentID)、查詢所有(getAll)。</p><p> 

68、 下面是用圖的形式來描述系統(tǒng)中的類,包括類的屬性和方法,以及類與類的關(guān)系如圖4-3所示。</p><p>  圖4-3 系統(tǒng)類圖以及之間的關(guān)系</p><p><b>  4.3 數(shù)據(jù)庫設(shè)計(jì)</b></p><p>  根據(jù)數(shù)據(jù)庫的邏輯分析,在Microsoft SQL Server 2000數(shù)據(jù)庫建立數(shù)據(jù)庫表和數(shù)據(jù)字段。</p>

69、<p>  有E-R圖分析可映射成如下4張表。</p><p><b>  用戶信息表</b></p><p>  表名Data_user,存放用戶信息,物理結(jié)構(gòu)如表4-1所示。</p><p>  表4-1 用戶信息表Data_user</p><p><b>  管理員信息表</b>

70、</p><p>  表名Data_admin,存放管理員信息,物理結(jié)構(gòu)如表4-2所示。</p><p>  表4-2 管理員信息表Data_admin</p><p><b>  3.構(gòu)件信息表</b></p><p>  表名Data_component,存放構(gòu)件信息,物理結(jié)構(gòu)如表4-3所示。</p>

71、<p>  表4-3 構(gòu)件信息表Data_component</p><p>  續(xù)表4-3 構(gòu)件信息表Data_component</p><p><b>  4.評(píng)論信息表</b></p><p>  表名Data_comment,存放評(píng)論內(nèi)容,物理結(jié)構(gòu)如表4-4所示。</p><p>  表4-4 評(píng)論信

72、息表Data_comment</p><p><b>  5 具體實(shí)現(xiàn)</b></p><p>  軟件構(gòu)件庫管理系統(tǒng)主要有用戶管理、管理員管理、構(gòu)件管理、評(píng)論管理,這四大功能模塊。這一章主要來介紹系統(tǒng)的各個(gè)模塊的詳細(xì)實(shí)現(xiàn)。</p><p>  軟件構(gòu)件庫管理系統(tǒng)的主界面如圖5-1所示。</p><p>  圖5-1

73、系統(tǒng)首頁示意圖</p><p>  軟件構(gòu)件庫管理系統(tǒng)可以有以下使用方式:</p><p><b>  注冊(cè)</b></p><p>  任何人在使用本系統(tǒng)之前(構(gòu)件查詢和發(fā)表評(píng)論除外),必須注冊(cè),申請(qǐng)成為本系統(tǒng)的合法用戶。</p><p>  用戶登錄→維護(hù)個(gè)人信息/構(gòu)件發(fā)布/構(gòu)件查詢/評(píng)論查詢→注銷</p>

74、;<p>  用戶使用用戶名和密碼登錄到本系統(tǒng)后,可以進(jìn)行個(gè)人信息維護(hù)、構(gòu)件發(fā)布或管理自己的構(gòu)件、評(píng)論查詢的工作,完成之后注銷用戶身份。如想再使用本系統(tǒng)(構(gòu)件查詢除外),必須再次登錄系統(tǒng)。</p><p><b>  構(gòu)件查詢→發(fā)表評(píng)論</b></p><p>  任何人員都可以不進(jìn)行系統(tǒng)登錄而直接查詢構(gòu)件,并且還可以發(fā)表評(píng)論。</p>&

75、lt;p>  系統(tǒng)管理員登錄→維護(hù)系統(tǒng)管理員/維護(hù)用戶/維護(hù)構(gòu)件/維護(hù)評(píng)論→注銷</p><p>  系統(tǒng)管理員登錄系統(tǒng)后,管理系統(tǒng)管理員信息、管理用戶信息、管理構(gòu)件信息、管理構(gòu)件評(píng)論,完成之后注銷用戶身份,如果還想進(jìn)行系統(tǒng)管理功能,必須再次登錄。</p><p>  5.1 查詢構(gòu)件及發(fā)表評(píng)論</p><p>  5.1.1 查詢構(gòu)件</p>

76、<p>  查詢構(gòu)件用戶有兩類:一類是未登錄的用戶,另一類是登錄用戶。未登錄用戶可以查看構(gòu)件、發(fā)表評(píng)論,登錄用戶也可以查看構(gòu)件、發(fā)表評(píng)論并且還可以管理自己的構(gòu)件。</p><p>  查詢部分的主要功能,是幫助用戶根據(jù)自己的需要查詢、瀏覽、選取和提取構(gòu)件庫中的構(gòu)件。系統(tǒng)為用戶提供了3種查詢構(gòu)件的方式,分別是模糊查詢、按封裝語言查詢、按功能類型查詢。盡量保證用戶快速、準(zhǔn)確地查找到自己所需要的構(gòu)件。<

77、/p><p>  例如:用戶采用模糊查詢,可以在模糊查詢文本框中輸入關(guān)鍵字“JSP”,系統(tǒng)將關(guān)鍵字與數(shù)據(jù)庫存儲(chǔ)的構(gòu)件名稱匹配,只要構(gòu)件名稱中含有“JSP”字樣,就將構(gòu)件顯示出來。下圖是查詢后的顯示結(jié)果如圖5-2所示。</p><p>  圖5-2 顯示查詢構(gòu)件結(jié)果示意圖</p><p>  在此頁面中,將顯示出構(gòu)件編號(hào)、構(gòu)件名稱、發(fā)布日期,這些構(gòu)件信息。查詢構(gòu)件的操作

78、順序是:首先,用戶進(jìn)入查詢構(gòu)件頁面(在首頁也可以查詢),其次,用戶可以選擇任何一種查詢方式來查詢構(gòu)件,輸入或選擇查詢條件,最后,點(diǎn)擊相應(yīng)的查詢按鈕。系統(tǒng)將顯示查詢結(jié)果,若是沒有查詢到構(gòu)件,將顯示為空。下面是查詢構(gòu)件的流程圖如圖5-3所示。</p><p>  圖5-3 查詢構(gòu)件流程圖</p><p>  查詢完畢之后,用戶可以點(diǎn)擊界面右側(cè)的“查看構(gòu)件詳細(xì)”按鈕,可以看到構(gòu)件的詳細(xì),包括構(gòu)

79、件描述、當(dāng)前版本、封裝語言、運(yùn)行環(huán)境、構(gòu)件來源、功能類型、構(gòu)件大小、國際化支持、開發(fā)商名稱、開發(fā)商主頁。用戶可以根據(jù)開發(fā)商提供的來源地址下載構(gòu)件,或者根據(jù)開發(fā)商提供的開發(fā)商主頁地址,聯(lián)系開發(fā)商,取得構(gòu)件。</p><p>  5.1.2 發(fā)表評(píng)論</p><p>  任何用戶都可以對(duì)構(gòu)件發(fā)表評(píng)論,其中評(píng)論主題、內(nèi)容不能為空,系統(tǒng)還要求填寫驗(yàn)證碼。該頁面的顯示效果如圖5-4所示。</p

80、><p>  圖5-4 發(fā)表評(píng)論界面示意圖</p><p>  用戶填寫完評(píng)論信息之后,點(diǎn)擊“提交”,系統(tǒng)將檢驗(yàn)評(píng)論主題、評(píng)論內(nèi)容是否為空,若不為空,將評(píng)論信息保存到數(shù)據(jù)庫中,若是為空,系統(tǒng)會(huì)顯示出錯(cuò)誤信息,只能重新發(fā)表。下面是發(fā)表評(píng)論的流程圖,如圖5-5所示。</p><p>  圖5-5 發(fā)表評(píng)論流程圖</p><p>  5.2 用戶管理

81、模塊實(shí)現(xiàn)</p><p><b>  5.2.1 注冊(cè)</b></p><p>  任何人在使用系統(tǒng)之前(除構(gòu)件查詢除外),必須先注冊(cè)成為系統(tǒng)會(huì)員,點(diǎn)擊主界面上的“用戶注冊(cè)”鏈接,可進(jìn)入到“用戶注冊(cè)頁面”如圖5-6所示。 </p><p>  圖5-6 用戶注冊(cè)界面示意圖</p><p>  在此界面上,需要填寫的個(gè)人

82、基本信息,包括用戶名、密碼、性別、找回密碼問題、問題答案、真實(shí)姓名、聯(lián)系地址、電子郵件,系統(tǒng)在注冊(cè)時(shí)還要求用戶正確填寫驗(yàn)證碼。用戶填寫完所有的信息之后,點(diǎn)擊“注冊(cè)”按鈕,系統(tǒng)首先對(duì)所填信息進(jìn)行檢驗(yàn),以確保信息合法,然后再把信息存儲(chǔ)到數(shù)據(jù)庫中。下面是用戶注冊(cè)的程序的流程圖,如圖5-7所示。</p><p>  圖5-7 用戶注冊(cè)流程圖</p><p><b>  5.2.2 登錄

83、</b></p><p>  用戶要向發(fā)布構(gòu)件必須先登錄系統(tǒng),系統(tǒng)登錄界面如圖5-8所示。 </p><p>  圖5-8 用戶登錄界面示意圖</p><p>  在此界面上,用戶需要填寫自己的用戶名和密碼,以及系統(tǒng)需要的驗(yàn)證碼,填寫完整之后,點(diǎn)擊“用戶登錄”按鈕,系統(tǒng)先檢測輸入的信息是否合法,如果合法,再去數(shù)據(jù)庫中查找用戶是否存在,程序流程圖如圖5-

84、9所示。</p><p>  圖5-9 用戶登錄流程圖</p><p>  經(jīng)過系統(tǒng)查找之后,如果用戶存在,將顯示登錄成功界面如圖5-10所示。</p><p>  圖5-10 用戶登錄成功界面示意圖</p><p>  5.2.3 忘記密碼</p><p>  由于某種原因,用戶忘記了密碼,系統(tǒng)為用戶提供了找回密

85、碼的功能。如果用戶忘記了密碼,可以點(diǎn)擊界面上的“忘記密碼”鏈接進(jìn)入找回密碼界面,如圖5-11所示。</p><p>  圖5-11 找回密碼界面示意圖</p><p>  在此界面上,用戶根據(jù)用戶名、注冊(cè)時(shí)填寫的找回密碼問題以及問題答案這3項(xiàng)信息向系統(tǒng)詢問。系統(tǒng)首先找到對(duì)應(yīng)的用戶,再將現(xiàn)在填寫的找回密碼問題以及問題答案與數(shù)據(jù)庫中的這些信息匹配,若是匹配成功,系統(tǒng)會(huì)讓用戶重新設(shè)置密碼;若是

86、匹配不成功,系統(tǒng)將給出錯(cuò)誤提示。下面是找回密碼功能模塊的流程圖,如圖5-12所示。</p><p>  圖5-12 找回密碼流程圖</p><p>  5.2.4 修改密碼</p><p>  用戶登錄成功之后,可以進(jìn)入“我的帳戶”,在此界面上有修改密碼鏈接,用戶點(diǎn)擊“修改密碼”,進(jìn)入修改密碼頁面,如圖5-13所示。</p><p>  圖

87、5-13 修改密碼示意圖</p><p>  用戶填寫原密碼、新密碼、新密碼確認(rèn),可以隨時(shí)修改密碼。下面是修改密碼的流程圖,如圖5-14所示。</p><p>  圖5-14 修改密碼流程圖</p><p>  5.2.5 修改個(gè)人資料</p><p>  同樣,在“我的帳戶”頁面里,系統(tǒng)也給出了修改個(gè)人資料鏈接,用戶點(diǎn)擊左側(cè)的“用戶信息”

88、在右側(cè)可看到個(gè)人資料,如圖5-15所示。在這里,用戶點(diǎn)擊“用戶信息”時(shí),系統(tǒng)按照用戶ID查詢用戶信息,從數(shù)據(jù)庫中查詢出來信息并顯示給用戶,用戶可以修改以前的個(gè)人信息。修改完之后,用戶點(diǎn)擊“修改”按鈕,系統(tǒng)開始檢查用戶重新修改的信息,其中“用戶名”不能為空,若是為空,系統(tǒng)將提示錯(cuò)誤信息。檢查完之后,系統(tǒng)將新的信息保存到數(shù)據(jù)庫中。</p><p>  圖5-15 修改個(gè)人資料示意圖</p><p

89、>  用戶可以修改個(gè)人資料,下面是修改個(gè)人資料的流程圖如圖5-16所示。</p><p>  圖5-16 修改個(gè)人資料流程圖</p><p>  5.2.6 發(fā)布構(gòu)件</p><p>  用戶如果希望別人使用自己的構(gòu)件,首先必須在網(wǎng)上發(fā)布這些構(gòu)件相關(guān)信息。用戶必須登錄系統(tǒng),才能發(fā)布構(gòu)件,在“我的帳戶”頁面中,系統(tǒng)給出了發(fā)布構(gòu)件的鏈接,發(fā)布構(gòu)件界面如圖5-17

90、所示。</p><p>  圖5-17 發(fā)布構(gòu)件頁面示意圖</p><p>  在發(fā)布軟件構(gòu)件時(shí),用戶需要填寫以下信息項(xiàng):</p><p><b>  構(gòu)件名稱</b></p><p>  構(gòu)件必須有名稱,名稱不能為空,模糊查詢就是根據(jù)構(gòu)件名稱來查找的,所以名稱非常重要。</p><p><

91、;b>  構(gòu)件描述</b></p><p>  構(gòu)件描述是對(duì)構(gòu)件的詳細(xì)說明,包括軟件構(gòu)件的結(jié)構(gòu)、內(nèi)容、所采用的數(shù)據(jù)結(jié)構(gòu)、使用方法等。系統(tǒng)允許用戶填寫可達(dá)2000字的構(gòu)件描述內(nèi)容??傊?,描述的越詳細(xì),其他用戶就越容易理解構(gòu)件。</p><p><b>  封裝語言</b></p><p>  封裝語言是指構(gòu)件是什么語言編寫的,系

92、統(tǒng)以下拉列表的形式提供給用戶選擇,包括java語言、.NET相關(guān)、C/C++、Delphi、Basic、Asp/Php、Fortran、Perl/Python/Ruby和其他。系統(tǒng)提供給用戶一個(gè)按封裝語言的查詢方式,所以用戶必須認(rèn)真填寫這一項(xiàng)。</p><p><b>  功能類型</b></p><p>  功能類型是指構(gòu)件的用途,也是以下拉列表的形式給出,包括系統(tǒng)

93、和安全、程序開發(fā)、數(shù)據(jù)庫相關(guān)、網(wǎng)絡(luò)與通信、中間件、文件處理、標(biāo)記語言(XML)相關(guān)、用戶界面、實(shí)用工具、信息管理、辦公應(yīng)用、Web應(yīng)用、領(lǐng)域相關(guān)和其他。</p><p><b>  國際化支持</b></p><p>  是指能使用于什么語言,包括簡體中文、繁體中文、日語、英語和其他。</p><p><b>  構(gòu)件來源</b

94、></p><p>  構(gòu)件是來源是下載構(gòu)件的鏈接地址,用戶可以填寫,也可以不填寫。</p><p><b>  構(gòu)件大小</b></p><p><b>  當(dāng)前版本</b></p><p>  當(dāng)前版本包括:阿爾法(Alpha)內(nèi)部測試版、貝它(Beta)外部測試版、成熟(Gamma)版本

95、、試用版本(Trial)。</p><p><b>  運(yùn)行環(huán)境</b></p><p>  系統(tǒng)的運(yùn)行環(huán)境包括:Ms-Dos、OS/2、Windows、Linux、Windows NT、Windows 2000等。</p><p><b>  開發(fā)商名稱</b></p><p>  開發(fā)商名稱是指

96、誰開發(fā)的構(gòu)件,發(fā)布時(shí)應(yīng)該寫清楚。</p><p><b>  開發(fā)商主頁</b></p><p>  為了便于和開發(fā)商聯(lián)系,應(yīng)該把開發(fā)商主頁也寫上。</p><p>  完整填寫構(gòu)件信息之后,點(diǎn)擊“確認(rèn)提交”按鈕,系統(tǒng)檢查構(gòu)件信息,若是信息合法,就會(huì)將其保存到數(shù)據(jù)庫。下面是系統(tǒng)實(shí)現(xiàn)的流程圖如圖5-18所示。</p><p&g

97、t;  圖 5-18 發(fā)布構(gòu)件的流程圖</p><p>  5.2.7 查詢我的構(gòu)件</p><p><b>  1. 查詢構(gòu)件列表</b></p><p>  用戶登錄系統(tǒng)后,可以查詢自己所發(fā)布的構(gòu)件。在“我的帳戶”頁面中,用戶點(diǎn)擊“我的構(gòu)件”系統(tǒng)將自動(dòng)獲得用戶編號(hào)并按照用戶編號(hào)查詢所有的構(gòu)件,以列表的形式顯示出來,如圖5-19所示。<

98、;/p><p>  圖5-19 顯示我的構(gòu)件示意圖</p><p>  在此頁面上,將顯示出構(gòu)件編號(hào)、構(gòu)件名稱、發(fā)布時(shí)間,下面是查詢過程的流程圖,如圖5-20所示。</p><p>  圖5-20 按用戶查詢本人發(fā)布的構(gòu)件流程圖</p><p>  2.查詢構(gòu)件詳細(xì)信息</p><p>  上面只顯示構(gòu)件編號(hào)、構(gòu)件名稱

99、、發(fā)布時(shí)間,構(gòu)件信息不夠詳細(xì),在每一行后面都有一個(gè)“查詢構(gòu)件詳細(xì)”按鈕,用戶點(diǎn)擊此按鈕,系統(tǒng)自動(dòng)獲得構(gòu)件編號(hào),并按照構(gòu)件編號(hào)查詢構(gòu)件的詳細(xì)信息,如圖5-21所示。</p><p>  圖5-21 顯示構(gòu)件詳細(xì)內(nèi)容示意圖</p><p>  在此頁面上,將顯示出構(gòu)件的詳細(xì)信息,到此構(gòu)件的完整的查詢過程全部完成。下面是查詢構(gòu)件詳細(xì)的流程圖如圖5-22所示。</p><p&

100、gt;  圖5-22 按構(gòu)件ID查詢構(gòu)件程序流程圖</p><p>  5.2.8 查詢構(gòu)件相應(yīng)評(píng)論</p><p>  在顯示構(gòu)件詳細(xì)信息頁面中,系統(tǒng)設(shè)置了“查詢?cè)u(píng)論”按鈕,用戶可以點(diǎn)擊此按鈕,系統(tǒng)會(huì)自動(dòng)獲得構(gòu)件編號(hào),按構(gòu)件編號(hào)查詢其他用戶對(duì)本構(gòu)件所發(fā)表的評(píng)論。系統(tǒng)只允許用戶查看評(píng)論,不允許用戶對(duì)評(píng)論做任何操作。查詢結(jié)果如圖5-23所示。</p><p>  圖

101、5-23 構(gòu)件的相關(guān)評(píng)論示意圖</p><p>  系統(tǒng)顯示出了評(píng)論編號(hào)、評(píng)論主題、評(píng)論內(nèi)容、評(píng)論時(shí)間,查詢過程的流程圖如圖5-24所示。</p><p>  圖5-24 查詢?cè)u(píng)論流程圖</p><p>  5.2.9 刪除構(gòu)件</p><p>  用戶可以刪除自己所發(fā)布的構(gòu)件,在顯示構(gòu)件詳細(xì)信息頁面中,系統(tǒng)設(shè)有“刪除”按鈕。用戶點(diǎn)擊此按

102、鈕,系統(tǒng)將自動(dòng)獲得構(gòu)件編號(hào),按照構(gòu)件編號(hào)查到對(duì)應(yīng)的構(gòu)件將其刪除,刪除成功后,系統(tǒng)將給出提示,如圖5-25所示。 </p><p>  圖5-25 刪除構(gòu)件成功界面示意圖</p><p>  下面是刪除構(gòu)件數(shù)據(jù)庫操作代碼:</p><p>  public boolean delete(int componmentid) {</p><p>

103、  boolean flag = false;</p><p>  Transaction tx = null;</p><p><b>  try {</b></p><p>  Session session = HibernateSessionFactory.getSession();</p><p>  tx =

104、 session.beginTransaction();</p><p>  DataComponment componment = (DataComponment) session.get(</p><p>  DataComponment.class, new Integer(componmentid));</p><p>  session.delete(co

105、mponment);</p><p>  System.out.print("刪除成功");</p><p>  tx.commit();</p><p>  session.flush();</p><p>  flag = true;</p><p>  } catch (Exception e

106、x) {</p><p>  if (tx != null) {</p><p>  tx.rollback();</p><p><b>  }</b></p><p>  ex.printStackTrace();</p><p>  } finally {</p><p&

107、gt;  HibernateSessionFactory.closeSession();</p><p><b>  }</b></p><p>  return flag;}</p><p>  5.3 管理員管理模塊實(shí)現(xiàn)</p><p>  系統(tǒng)管理員不是從主界面登錄到系統(tǒng)的,系統(tǒng)為管理員設(shè)有獨(dú)立的登錄窗口如圖5-2

108、6所示。</p><p>  圖5-26 管理員登錄界面示意圖</p><p>  該頁面只允許系統(tǒng)管理員登錄,管理員按照擁有不同的權(quán)限分為:</p><p><b>  超級(jí)管理員</b></p><p>  超級(jí)管理員只有一個(gè),它主要負(fù)責(zé)管理員系統(tǒng)中所有的管理員,可以添加管理員、修改管理員權(quán)限、查找所有的管理員、刪

109、除管理員</p><p><b>  用戶管理員</b></p><p>  它主要負(fù)責(zé)管理系統(tǒng)中的所有的用戶,可以查找所有的用戶、刪除用戶。</p><p><b>  構(gòu)件管理員</b></p><p>  它主要負(fù)責(zé)管理數(shù)據(jù)庫中所有的構(gòu)件,可以查詢所有的構(gòu)件、刪除構(gòu)件</p>&

110、lt;p><b>  評(píng)論管理員</b></p><p>  它負(fù)責(zé)管理數(shù)據(jù)庫中所有的評(píng)論,可以查詢所有評(píng)論、刪除評(píng)論。</p><p>  5.3.1 超級(jí)管理員管理模塊</p><p><b>  1.添加管理員</b></p><p>  系統(tǒng)中的所有管理員都是由超級(jí)管理員添加的,超級(jí)管

111、理員登錄到系統(tǒng)之后,便進(jìn)入超級(jí)管理員管理中心。如圖5-27所示。</p><p>  圖5-27 添加管理員界面示意圖</p><p>  在此界面上,超級(jí)管理員需要填寫管理員名稱、管理員密碼、確認(rèn)密碼、選擇管理權(quán)限和系統(tǒng)所需要的驗(yàn)證碼。系統(tǒng)首先檢查管理員名稱是否為空,若是為空,系統(tǒng)將提示錯(cuò)誤并且結(jié)束;若是不為空,再檢查密碼和確認(rèn)密碼是否正確,若是不正確,系統(tǒng)將提示錯(cuò)誤并結(jié)束;若是正確,

112、檢查驗(yàn)證碼是否相等,若是不相等,同樣提示錯(cuò)誤并結(jié)束;若是相等,將保存管理員信息。下面是添加管理員模塊的流程圖如圖5-28所示。</p><p>  圖5-28 添加管理員流程圖</p><p><b>  2. 查詢管理員</b></p><p>  超級(jí)管理員可以查詢所有的系統(tǒng)管理員,在超級(jí)管理員管理中心,超級(jí)管理員點(diǎn)擊查詢所有管理員,將查詢

113、出全部的管理員,以列表的形式顯示出管理員編號(hào)、管理員名稱、管理員權(quán)限,如圖5-29所示。 </p><p>  圖5-29 查詢管理員界面示意圖</p><p>  下面是查詢管理員操作數(shù)據(jù)庫的核心代碼:</p><p>  public List queryGetAll() {</p><p>  Transaction tx = nul

114、l;</p><p>  List list;</p><p><b>  try {</b></p><p>  Session session = HibernateSessionFactory.getSession();</p><p>  String sql = " from Admin "

115、;</p><p>  list = session.createQuery(sql).list();</p><p>  } catch (HibernateException e) {</p><p>  tx.rollback();</p><p>  e.printStackTrace();</p><p> 

116、 return null;</p><p>  } finally {</p><p>  HibernateSessionFactory.closeSession();</p><p><b>  }</b></p><p>  return list;}</p><p><b>  

117、修改管理員權(quán)限</b></p><p>  超級(jí)管理員可以修改管理權(quán)限,在顯示管理員列表后面有“修改權(quán)限”鏈接,超級(jí)管理員點(diǎn)擊此鏈接,將進(jìn)入修改管理員權(quán)限頁面,如圖5-30所示。 </p><p>  圖5-30 修改管理員權(quán)限界面示意圖</p><p>  系統(tǒng)將自動(dòng)獲得要修改的管理員的編號(hào),并且顯示到頁面上。超級(jí)管理員選擇新的權(quán)限,點(diǎn)擊“提交”按鈕

118、,系統(tǒng)將根據(jù)管理員編號(hào),修改管理員的權(quán)限,修改過程的流程圖如圖5-31所示。</p><p>  圖5-31 修改管理員權(quán)限流程圖</p><p>  5.3.2 構(gòu)件管理員管理模塊</p><p>  構(gòu)件管理員登錄系統(tǒng)之后,進(jìn)入構(gòu)件管理中心,構(gòu)件管理員的管理權(quán)限有查詢所有構(gòu)件、查詢構(gòu)件的詳細(xì)內(nèi)容、刪除構(gòu)件。其中,查詢構(gòu)件詳細(xì)內(nèi)容模塊的功能實(shí)現(xiàn)和用戶查詢構(gòu)件詳細(xì)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(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)論