畢業(yè)論文--基于ssh框架的論壇的設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)
已閱讀1頁(yè),還剩36頁(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、<p>  分類號(hào): TP311.52 單位代碼: 106 </p><p>  密 級(jí): 一般 學(xué) 號(hào): </p><p>  本科畢業(yè)論文(設(shè)計(jì))</p><p>  題 目: 基于SSH框架的論壇的設(shè)計(jì)與實(shí)現(xiàn)

2、</p><p>  專 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù) </p><p>  姓 名: </p><p>  指導(dǎo)教師: </p><p>  職 稱: 教 授 </p>

3、;<p>  答辯日期: 二〇一三年 月 日</p><p>  基于SSH框架的論壇的設(shè)計(jì)與實(shí)現(xiàn)</p><p>  摘 要:當(dāng)今社會(huì)正處在網(wǎng)絡(luò)時(shí)代,信息化大潮席卷全球,網(wǎng)絡(luò)正以前所未有的速度在我國(guó)普及開(kāi)來(lái)。論壇以其獨(dú)特的優(yōu)勢(shì)在信息化的過(guò)程中占有重要的一席。論壇的存在使得地球村的概念離我們?cè)絹?lái)越近,使得人與人之間的溝通、交流變得格外的容易。特別是在IT領(lǐng)域,只有有

4、了很好的交流,技術(shù)才會(huì)得到進(jìn)步。因此,掌握如何設(shè)計(jì)并開(kāi)發(fā)一個(gè)論壇也顯得格外的重要而且意義深遠(yuǎn)。</p><p>  論壇采用B/S體系結(jié)構(gòu),其功能是讓用戶自由地發(fā)表自己的帖子和回復(fù)其他用戶的帖子。論壇包括用戶模塊、帖子模塊、后臺(tái)管理模塊。論壇在Struts+Hibernate+Spring框架的基礎(chǔ)上,用JSP語(yǔ)言進(jìn)行開(kāi)發(fā),使用的數(shù)據(jù)庫(kù)是MySQL,開(kāi)發(fā)工具為MyEclipse10。本論壇界面簡(jiǎn)潔,具有可擴(kuò)展性和

5、可維護(hù)性。</p><p>  關(guān)鍵詞:BBS,S.S.H(Struts,Hibernate,Spring),JAVA,MySQL,JSP</p><p>  Design and implementation of BBS based on SSH framework</p><p>  Abstract:Society nowadays just be plac

6、ed in the network for ages, the information-based big tide rolls up the word, the network is making widely available to open in the our country with the unprecedented speed. Forum with its unique advantages in the proces

7、s of information occupies the important a seats. Forum makes the existence of the concept of global village closer and closer, making communication between people, communication becomes particularly easy. Especially in t

8、he IT field, only a ve</p><p>  This forum uses the B/S system structure, its function is to let users to freely express own posts and respond to other users posts. The forum includes user module, the posts

9、module, background management module. The forum is a based on Struts, Hibernate and Spring, develops with JSP, the use of the database is MySQL, development tools for MyEclipse10. This forum interface is simple and it ha

10、s scalability and maintainability.</p><p>  Keywords:BBS, SSH(Struts , Hibernate ,Spring) , JAVA , SQL ,JSP</p><p><b>  目 錄</b></p><p><b>  摘 要I</b></p&

11、gt;<p>  AbstractII</p><p>  第 1 章 緒論1</p><p><b>  1.1研究背景1</b></p><p><b>  1.2研究目的1</b></p><p><b>  1.3研究方法2</b></p&

12、gt;<p>  第 2 章 系統(tǒng)分析3</p><p><b>  2.1技術(shù)分析3</b></p><p>  2.1.1 開(kāi)發(fā)語(yǔ)言綜述3</p><p>  2.1.2 S.S.H框架的優(yōu)點(diǎn)3</p><p>  2.1.3 系統(tǒng)層次設(shè)計(jì)5</p><p><b

13、>  2.2需求分析6</b></p><p>  2.2.1功能需求6</p><p>  2.2.2性能需求7</p><p>  2.2.3系統(tǒng)開(kāi)發(fā)運(yùn)行環(huán)境7</p><p>  第 3 章 系統(tǒng)設(shè)計(jì)8</p><p>  3.1 概要設(shè)計(jì)8</p><p>

14、  3.1.1功能模塊設(shè)計(jì)8</p><p>  3.1.2系統(tǒng)界面設(shè)計(jì)9</p><p>  3.2 數(shù)據(jù)庫(kù)設(shè)計(jì)10</p><p>  3.2.1概念模型設(shè)計(jì)(E-R圖)10</p><p>  3.2.2數(shù)據(jù)庫(kù)表及關(guān)系建立11</p><p>  3.2.3詳細(xì)數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)11</p>

15、<p>  第 4 章 系統(tǒng)實(shí)現(xiàn)15</p><p>  4.1 系統(tǒng)框架實(shí)現(xiàn)15</p><p>  4.1.1底層數(shù)據(jù)庫(kù)的建立15</p><p>  4.1.2持久化層的建立(Hibernate)16</p><p>  4.1.3業(yè)務(wù)邏輯層的建立16</p><p>  4.1.4表示層的

16、建立16</p><p>  4.2 系統(tǒng)功能模塊實(shí)現(xiàn)17</p><p>  4.2.1用戶模塊實(shí)現(xiàn)17</p><p>  4.2.2帖子模塊實(shí)現(xiàn)21</p><p>  4.2.3后臺(tái)管理模塊實(shí)現(xiàn)23</p><p>  第 5 章 系統(tǒng)測(cè)試24</p><p>  5.1 測(cè)

17、試概述24</p><p>  5.1.1軟件測(cè)試的目的24</p><p>  5.1.2軟件測(cè)試的任務(wù)24</p><p>  5.1.3測(cè)試環(huán)境24</p><p>  5.2 單元測(cè)試25</p><p>  5.3 集成測(cè)試26</p><p>  5.4 功能測(cè)試26&

18、lt;/p><p>  第 6 章 總結(jié)28</p><p><b>  參考文獻(xiàn)29</b></p><p><b>  致 謝30</b></p><p><b>  第 1 章 緒論</b></p><p><b>  1.1研究背景

19、</b></p><p>  1978年在美國(guó)芝加哥開(kāi)發(fā)出一套基于8080芯片的CBBS/Chicago (Computerized Bulletin Board System/Chicago),此乃最早的一套BBS系統(tǒng)。之后隨著蘋果機(jī)的問(wèn)世,開(kāi)發(fā)出基于蘋果機(jī)的Bulletin Board System和大眾信息系統(tǒng)Peoples Message System兩種BBS系統(tǒng)。1981年IBM個(gè)人計(jì)算機(jī)

20、誕生時(shí),并沒(méi)有自己的BBS系統(tǒng)。直到1982年,Buss Lane 才用Basic語(yǔ)言為IBM個(gè)人計(jì)算機(jī)編寫(xiě)了一個(gè)原型程序。其后經(jīng)過(guò)幾番增修,終于在1983年通過(guò)Capital PC User Group的Communication Special Interest Group會(huì)員的努力,改寫(xiě)出了個(gè)人計(jì)算機(jī)系統(tǒng)的BBS。經(jīng)Thomas Mach整理后,終于完成了個(gè)人計(jì)算機(jī)的第1版BBS系統(tǒng)——RBBS-PC。這套BBS系統(tǒng)的最大特色是其

21、源程序全部公開(kāi),有利于日后的修改和維護(hù),因此后來(lái)在開(kāi)發(fā)其他的BBS系統(tǒng)時(shí)都以此為框架,所以RBBS-PC贏得了BBS鼻祖的美稱。</p><p>  大約是從1991年開(kāi)始,國(guó)內(nèi)開(kāi)始了第一個(gè)BBS論壇。經(jīng)過(guò)長(zhǎng)時(shí)間的發(fā)展,直到1995年,隨著計(jì)算機(jī)及其外設(shè)的大幅降價(jià),BBS論壇才逐漸被人們所認(rèn)識(shí)。1996年更是以驚人的速度發(fā)展起來(lái)。國(guó)內(nèi)的BBS論壇,大多數(shù)還是大型綜合性BBS論壇。隨著計(jì)算機(jī)的普及,特別是寬帶的普及

22、,BBS的活動(dòng)將會(huì)進(jìn)一步高漲。但是,隨之而來(lái)對(duì)專注于領(lǐng)域方面的BBS將會(huì)慢慢增加需求。盡管BBS論壇的數(shù)量在不斷增長(zhǎng),但BBS的發(fā)展過(guò)程,也出現(xiàn)了一些問(wèn)題。由于國(guó)內(nèi)使用的BBS架站軟件,都是從國(guó)外引進(jìn)的,因此沒(méi)有必要的中文說(shuō)明。雖然一些熱心的站長(zhǎng)翻譯了一些資料,但是僅靠這些是遠(yuǎn)遠(yuǎn)不夠的。而國(guó)內(nèi)自己開(kāi)發(fā)的BBS基本上都是處于最原始的JSP MODEL1模式,這種模式是控制層與表示層合二為一,雖然開(kāi)發(fā)簡(jiǎn)單,但是擁有很差的擴(kuò)展性,可維護(hù)性,這

23、樣極大地限制了BBS站點(diǎn)的擴(kuò)展。于是在這種情況下,本文提出了基于MVC模式的SSH框架的BBS論壇。本論壇的優(yōu)點(diǎn)在于它具有強(qiáng)大的可擴(kuò)展性和可維護(hù)性,適合網(wǎng)民創(chuàng)建自己的中小型BBS論壇。</p><p><b>  1.2研究目的</b></p><p>  進(jìn)入二十一世紀(jì),計(jì)算機(jī)技術(shù)迅速向著網(wǎng)絡(luò)化、集成化方向發(fā)展。傳統(tǒng)的單機(jī)版應(yīng)用軟件正在逐漸退出舞臺(tái),取而代之的是支持

24、網(wǎng)絡(luò)、支持多種數(shù)據(jù)信息(多媒體)的新一代網(wǎng)絡(luò)版應(yīng)用軟件,而目前網(wǎng)絡(luò)版軟件中似乎存在著兩種不同的趨勢(shì),一種是稱為客戶端——服務(wù)器的C/S結(jié)構(gòu),這類軟件具有結(jié)構(gòu)嚴(yán)謹(jǐn),運(yùn)行效率高,服務(wù)器端壓力小,安全性好等優(yōu)點(diǎn),被廣泛運(yùn)用于局域網(wǎng)中。而另一種,也是本畢業(yè)設(shè)計(jì)所采用的,是稱為瀏覽器——服務(wù)器的B/S結(jié)構(gòu),它的特點(diǎn)是在客戶端直接采用了功能強(qiáng)大的瀏覽器軟件作為界面,其優(yōu)點(diǎn)在于軟件開(kāi)發(fā)效率高,客戶端不受操作平臺(tái)的限制、也不受地域的限制,網(wǎng)絡(luò)傳輸量少,

25、既適用于局域網(wǎng),又適用于Internet,而且投資小、見(jiàn)效快,用戶可以不必進(jìn)行服務(wù)器方面的投資,而是去租用,甚至是免費(fèi)使用ISP的服務(wù)器資源,因而受到越來(lái)越多中小型單位的青睞。</p><p>  隨著Internet技術(shù)的不斷發(fā)展,以及用戶群爆炸性地增長(zhǎng),網(wǎng)絡(luò)不再僅僅是信息的被動(dòng)獲取來(lái)源,更成為人們探討問(wèn)題、交換觀點(diǎn)的場(chǎng)所,其中,網(wǎng)上論壇扮演了極其重要的角色,隨著時(shí)間的推移,論壇站點(diǎn)中積存了豐富的信息資源,不但

26、有各類技術(shù)資料和新聞文檔,還包含著用戶的判斷和評(píng)論,論壇站點(diǎn)己成為Web信息庫(kù)的重要組成部分,自網(wǎng)上論壇誕生20多年以來(lái),隨著Web技術(shù)的發(fā)展,己經(jīng)由原來(lái)簡(jiǎn)單的電子公告板系統(tǒng)發(fā)展為功能豐富的網(wǎng)上論壇和虛擬社區(qū)模式。各種論壇隨著網(wǎng)絡(luò)迅速發(fā)展,幾乎充實(shí)著生活工作的每一個(gè)方面,無(wú)論是商界、政界,還是娛樂(lè)界,都有各種論壇。互聯(lián)網(wǎng)正在融入我們的生活,網(wǎng)絡(luò)提供給我們的不只是一個(gè)獲取信息的來(lái)源,而且還是一個(gè)可以相互交流的空間,網(wǎng)上論壇正是一種供人們進(jìn)

27、行交流的網(wǎng)絡(luò)空間, 影響和改變著我們的生活。為了方便信息交流,在結(jié)合java和ssh技術(shù)之下開(kāi)發(fā)了這個(gè)快捷、界面友好的交流系統(tǒng),實(shí)現(xiàn)了一個(gè)功能相對(duì)齊全的論壇系統(tǒng),網(wǎng)友可以自由地提出問(wèn)題以及幫助他人解決問(wèn)題,或者交流經(jīng)驗(yàn)。</p><p><b>  1.3研究方法</b></p><p>  論壇在Struts+Spring+Hibernate 擴(kuò)展Structs框架

28、的基礎(chǔ)上,用今天主流的網(wǎng)站開(kāi)發(fā)技術(shù)jsp語(yǔ)言進(jìn)行開(kāi)發(fā)。論壇將采用B/S體系結(jié)構(gòu),人們通過(guò)瀏覽器就可以訪問(wèn)網(wǎng)站的主頁(yè)。在這論壇可以自由地發(fā)表自己的觀點(diǎn)和對(duì)論壇主題發(fā)表意見(jiàn),我們還可以對(duì)網(wǎng)友的問(wèn)題進(jìn)行及時(shí)的解決,獲取對(duì)自己有用的知識(shí)。本網(wǎng)站按照軟件項(xiàng)目開(kāi)發(fā)的流程進(jìn)行開(kāi)發(fā),對(duì)于網(wǎng)站開(kāi)發(fā)的可行性分析、需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)以及對(duì)網(wǎng)站的測(cè)試與維護(hù)都有詳細(xì)的論述和實(shí)現(xiàn)過(guò)程。</p><p>  第 2 章 系統(tǒng)分析&l

29、t;/p><p><b>  2.1技術(shù)分析</b></p><p>  2.1.1 開(kāi)發(fā)語(yǔ)言綜述</p><p>  本系統(tǒng)是基于面向?qū)ο笏枷氲腏AVA語(yǔ)言中J2EE平臺(tái)進(jìn)行編寫(xiě),J2EE平臺(tái)具有以下優(yōu)點(diǎn)。</p><p>  1.簡(jiǎn)化結(jié)構(gòu):J2EE平臺(tái)支持簡(jiǎn)化的、基于組件開(kāi)發(fā)模型,遵循J2EE標(biāo)準(zhǔn)的所有服務(wù)器都支持該模型

30、。J2EE標(biāo)準(zhǔn)還允許客戶訂購(gòu)與J2EE兼容的第三方的現(xiàn)成組件,把其部署到異構(gòu)環(huán)境中,節(jié)省了由自己制訂整個(gè)方案所需的費(fèi)用。</p><p>  2. 提高開(kāi)發(fā)效率:由于組件技術(shù)的使用,可以按照開(kāi)發(fā)人員的技能對(duì)應(yīng)用程序開(kāi)發(fā)進(jìn)行分工,并行開(kāi)發(fā),提供整體開(kāi)發(fā)效率。例如:圖形設(shè)計(jì)師創(chuàng)建JSP模板,商業(yè)邏輯由該領(lǐng)域的專家完成,JSP頁(yè)面由Java工程師完成,應(yīng)用程序的裝配和部署由團(tuán)隊(duì)中其他的成員完成,其中許多工作可以同時(shí)進(jìn)行

31、,有助于加速應(yīng)用程序的開(kāi)發(fā)。</p><p>  3.易于維護(hù):基于組件的設(shè)計(jì)簡(jiǎn)化了應(yīng)用程序的維護(hù)。由于組件可以被獨(dú)立地更新和替代,通過(guò)更新應(yīng)用程序中特定的組件,新的功能可以被很容易地增加。</p><p>  4.可伸縮性:基于J2EE平臺(tái)的應(yīng)用程序可被部署到各種操作系統(tǒng)上,例如,可被部署到高端UNIX或其他的大型機(jī)系統(tǒng)上。J2EE領(lǐng)域的供應(yīng)商提供了更為廣泛的負(fù)載平衡策略,能消除系統(tǒng)中的

32、瓶頸,允許多臺(tái)服務(wù)器集成部署,實(shí)現(xiàn)可高度伸縮的系統(tǒng),滿足未來(lái)商業(yè)應(yīng)用的需要。</p><p>  2.1.2 S.S.H框架的優(yōu)點(diǎn)</p><p>  S.S.H框架是J2EE應(yīng)用中Struts+Spring+Hibernate三大免費(fèi)開(kāi)源框架的結(jié)合使用, 它可以看成工具,也是中間件。它是用來(lái)提高我們的開(kāi)發(fā)效率,提高我們軟件產(chǎn)品的可維護(hù)性、可擴(kuò)展性乃至敏捷性的。它有很多優(yōu)秀的設(shè)計(jì)理念及模式

33、應(yīng)用。比如,Struts屬于MVC框架,關(guān)鍵是要了解MVC的概念及大致原理;Hibernate屬于ORM系統(tǒng),屬于持久層的解決方案,同樣需要對(duì)ORM的概念及原理有一個(gè)總體的了解;Spring屬于應(yīng)用程序框架,其核心是IOC容器以及AOP,Spring中還集成了很多適用東西,比如對(duì)JDBC的封裝、自己的MVC、對(duì)動(dòng)態(tài)語(yǔ)言的簡(jiǎn)潔訪問(wèn)等。</p><p>  S.S.H由以下3個(gè)框架構(gòu)成:</p><

34、;p>  1.Struts框架</p><p>  Struts 是Apache軟件基金會(huì)(ASF)贊助的一個(gè)開(kāi)源項(xiàng)目。它通過(guò)采用Servlet/JSP技術(shù),實(shí)現(xiàn)了基于Java EE Web應(yīng)用的MVC設(shè)計(jì)模式的應(yīng)用框架,是MVC經(jīng)典設(shè)計(jì)模式中的一個(gè)經(jīng)典產(chǎn)品。其基本構(gòu)成如圖2.1所示。</p><p>  圖2.1 Struts框架工作流程</p><p> 

35、 2.Spring框架</p><p>  Spring是一個(gè)開(kāi)源框架,Spring 是于2003 年興起的一個(gè)輕量級(jí)的Java 開(kāi)發(fā)框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中闡述的部分理念和原型衍生而來(lái)。它是為了解決企業(yè)應(yīng)用開(kāi)發(fā)的復(fù)雜性而創(chuàng)建的。Spring使用基本的JavaBean來(lái)完成以前只可能由EJB完成的事情。然而

36、,Spring的用途不僅限于服務(wù)器端的開(kāi)發(fā)。從簡(jiǎn)單性、可測(cè)試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。Spring框架由以下7個(gè)部分組成。</p><p>  圖2.2 Spring框架構(gòu)成</p><p>  3.Hibernate框架</p><p>  Hibernate是一個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了非常輕量級(jí)的

37、對(duì)象封裝,使得Java程序員可以隨心所欲地使用面向?qū)ο缶幊趟枷雭?lái)操縱數(shù)據(jù)庫(kù)。 Hibernate可以應(yīng)用在任何使用JDBC的場(chǎng)合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用,最具革命意義的是,Hibernate可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任。</p><p>  圖2.3 Hibernate框架</p><p>  

38、2.1.3 系統(tǒng)層次設(shè)計(jì)</p><p>  系統(tǒng)根據(jù)S.S.H框架的特點(diǎn),決定使用四層結(jié)構(gòu),這樣做的優(yōu)點(diǎn)是</p><p>  1、可以分層開(kāi)發(fā),訪問(wèn)數(shù)據(jù)庫(kù)與業(yè)務(wù)邏輯實(shí)現(xiàn)能夠分開(kāi)。</p><p><b>  2、提高代碼的復(fù)用</b></p><p>  圖2.4 BBS系統(tǒng)的分層結(jié)構(gòu)</p><

39、p><b>  2.2需求分析</b></p><p><b>  2.2.1功能需求</b></p><p>  對(duì)于訪問(wèn)論壇的用戶,可分為注冊(cè)會(huì)員和普通用戶,這兩種用戶有著不同的權(quán)限,比如普通用戶只能發(fā)普通帖,回帖,而注冊(cè)會(huì)員除此之外,還可以發(fā)含有圖片,附件的帖,并且可以對(duì)自己的注冊(cè)資料進(jìn)行修改等等。</p><p&

40、gt;  以下為用戶角色劃分:</p><p>  普通用戶(游客):普通用戶以游客身份登錄本系統(tǒng),只具有發(fā)普通帖,回帖的功能。</p><p>  注冊(cè)用戶:具備普通用戶所有的能力。并且注冊(cè)用戶可以發(fā)含有圖片、附件的帖,可以登錄,修改個(gè)人信息。</p><p>  管理員:登錄以后可以對(duì)論壇系統(tǒng)進(jìn)行管理,包括用戶管理、帖子管理、論壇信息管理。</p>

41、<p>  本系統(tǒng)是一套網(wǎng)上交流的BBS軟件,根據(jù)用戶的需要和實(shí)際的管理?xiàng)l件,應(yīng)由用戶功能模塊,帖子功能模塊和后臺(tái)管理模塊等幾個(gè)模塊所構(gòu)成,用戶可以對(duì)一些數(shù)據(jù)進(jìn)行查找和修改,并且注冊(cè)的用戶可以對(duì)帖子進(jìn)行特定的操作,而管理員可以對(duì)用戶和帖子進(jìn)行相關(guān)的管理。</p><p>  鑒于本系統(tǒng)的性質(zhì),系統(tǒng)應(yīng)該實(shí)現(xiàn)以下功能。</p><p><b>  用戶功能模塊</b

42、></p><p>  用戶的登錄:用戶輸入登錄信息,如用戶名、密碼,以注冊(cè)會(huì)員的身份進(jìn)入論壇;</p><p>  用戶的注冊(cè):主要是指除管理員以外的用戶角色(一般為游客),在網(wǎng)上在線填寫(xiě)一些會(huì)員的注冊(cè)信息。注冊(cè)后即可成為論壇的注冊(cè)會(huì)員;</p><p>  用戶資料的修改:注冊(cè)會(huì)員登錄成功后,可以修改自己的注冊(cè)信息,如密碼或者其它的內(nèi)容等。</p&g

43、t;<p><b>  帖子功能模塊</b></p><p>  帖子的發(fā)表:游客或者登陸成功的注冊(cè)用戶可以選擇自己感興趣的版塊,發(fā)表自己的帖子;</p><p>  帖子的回復(fù):游客或者登陸成功的注冊(cè)用戶可以查看感興趣的帖子并且進(jìn)行回復(fù)。</p><p><b>  后臺(tái)管理模塊</b></p>

44、<p>  用戶的管理:管理員登錄成功后,可以查看論壇的所有注冊(cè)用戶的信息并且進(jìn)行必要的修改;</p><p>  帖子的管理:管理員登錄成功后,可以查看論壇的所有版塊的所有帖子并且進(jìn)行必要的管理,如刪除帖子、帖子加精、帖子置頂;</p><p>  論壇信息的管理:管理員登錄成功后,可以查看論壇所有信息,并且可對(duì)論壇基本信息,如公告,版塊等進(jìn)行管理。</p>

45、<p><b>  2.2.2性能需求</b></p><p>  響應(yīng)時(shí)間:50個(gè)用戶同時(shí)在線時(shí)響應(yīng)時(shí)間不超過(guò)3秒。</p><p>  易用性:符合一般人的操作習(xí)慣,出現(xiàn)問(wèn)題時(shí),能夠提示。</p><p>  可修改性:能夠根據(jù)需求,增加或減少模塊。</p><p>  2.2.3系統(tǒng)開(kāi)發(fā)運(yùn)行環(huán)境</

46、p><p>  開(kāi)發(fā)環(huán)境: Windows 7 Tomcat7.0 JDK1.6</p><p>  硬件實(shí)現(xiàn): CoreP7350@2.0GHz 4G內(nèi)存 80G硬盤</p><p>  開(kāi)發(fā)語(yǔ)言: Java</p><p>  數(shù) 據(jù) 庫(kù): MySQL5.5</p><p>  開(kāi)發(fā)工具: MyEclips

47、e10 </p><p>  預(yù)期成果: 一個(gè)可擴(kuò)展的基于MVC模式的 BBS論壇</p><p>  第 3 章 系統(tǒng)設(shè)計(jì)</p><p><b>  3.1 概要設(shè)計(jì)</b></p><p>  根據(jù)需求分析的結(jié)果,對(duì)系統(tǒng)進(jìn)行詳細(xì)的概要設(shè)計(jì)。</p><p>  3.1.1功能模塊設(shè)計(jì)<

48、/p><p>  繪制出的用例圖,將本系統(tǒng)分為三個(gè)大的模塊,它們分別是會(huì)員資料模塊,帖子資料模塊和后臺(tái)管理模塊。本系統(tǒng)的功能層次圖如圖3.1所示。</p><p>  圖3.1系統(tǒng)功能層次圖</p><p>  如圖3.1,BBS系統(tǒng)實(shí)現(xiàn)了如下的功能。</p><p>  用戶模塊:此模塊用來(lái)實(shí)現(xiàn)用戶的登陸注冊(cè)和會(huì)員資料的修改。</p>

49、;<p>  用戶登陸模塊:用戶可以通過(guò)此模塊對(duì)論壇進(jìn)行登陸,登陸后便可以使用所有的會(huì)員功能,比如上傳圖片和附件等等。</p><p>  用戶注冊(cè)模塊:沒(méi)有帳號(hào)的用戶,可以通過(guò)此模塊添加用戶信息,添加成功后便可登陸論壇,使用會(huì)員功能。</p><p>  資料修改模塊:已注冊(cè)的用戶在登陸后,可以通過(guò)此模塊,對(duì)會(huì)員的基本資料,聯(lián)系方式,密碼,頭像等資料進(jìn)行修改?!?lt;/p

50、><p><b>  帖子模塊:</b></p><p>  發(fā)表帖子模塊:用戶可以在相應(yīng)的版區(qū)中,發(fā)表自己的主題,發(fā)表成功后,其他用戶便可以在相應(yīng)的版區(qū)中看到這篇帖子,并可以對(duì)其進(jìn)行回復(fù)等操作。</p><p>  回復(fù)帖子模塊:用戶在發(fā)表完主題后,用戶便可查看相關(guān)內(nèi)容,并可以對(duì)已發(fā)表的帖子進(jìn)行回復(fù)。</p><p>&l

51、t;b>  后臺(tái)管理:</b></p><p>  帖子管理模塊:帖子管理模塊是管理員對(duì)帖子管理的平臺(tái),如果管理員查看到帖子有不適宜發(fā)表的內(nèi)容時(shí),可以對(duì)帖子選擇刪除或者鎖定等操作,如果看到優(yōu)秀的帖子,還可以將帖子進(jìn)行置頂,加精。</p><p>  圖3.2帖子管理模塊功能層次圖</p><p>  用戶管理模塊:管理員可以通過(guò)此模塊,對(duì)用戶進(jìn)行管

52、理,對(duì)一些不法的用戶可以修改或者刪除資料。</p><p>  論壇管理模塊:管理員對(duì)論壇的添加,創(chuàng)建,刪除等功能都是在此模塊里進(jìn)行處理。</p><p>  3.1.2系統(tǒng)界面設(shè)計(jì)</p><p>  對(duì)于系統(tǒng)來(lái)說(shuō),用戶界面設(shè)計(jì)將非常重要,因?yàn)橐粋€(gè)交互良好的界面能夠加深瀏覽者的印象。設(shè)計(jì)的實(shí)現(xiàn)可以分為兩個(gè)部分。第一部分為站點(diǎn)的規(guī)劃及草圖的繪制,這一部分可以在紙上完

53、成。第二部分為網(wǎng)頁(yè)的制作,這一過(guò)程是在計(jì)算機(jī)上完成的。</p><p>  設(shè)計(jì)首頁(yè)的第一步是設(shè)計(jì)版面布局。我們可以將網(wǎng)頁(yè)看作傳統(tǒng)的報(bào)刊雜志來(lái)編輯,這里面有文字、圖像乃至動(dòng)畫(huà),我們要做的工作就是以最適合的方式將圖片和文字排放在頁(yè)面的不同位置。 除了要有一臺(tái)配置不錯(cuò)的計(jì)算機(jī)外,軟件也是必需的。不能簡(jiǎn)單地說(shuō)一個(gè)軟件的好壞,只要是設(shè)計(jì)者使用起來(lái)覺(jué)得方便而且能得心應(yīng)手的,就可以稱為好軟件。當(dāng)然,它應(yīng)該能滿足設(shè)計(jì)者的要求。

54、常用的軟件是Macromedia的Dreamweaver以及Adobe的Photoshop。</p><p>  設(shè)計(jì)是有原則的,無(wú)論使用何種手法對(duì)畫(huà)面中的元素進(jìn)行組合,都一定要遵循五個(gè)大的原則:統(tǒng)一、連貫、分割、對(duì)比及和諧。</p><p>  統(tǒng)一是指設(shè)計(jì)作品的整體性,一致性。設(shè)計(jì)作品的整體效果是至關(guān)重要的,在設(shè)計(jì)中切勿將各組成部分孤立分散,那樣會(huì)使畫(huà)面呈現(xiàn)出一種枝蔓紛雜的凌亂效果。&

55、lt;/p><p>  連貫是指要注意頁(yè)面的相互關(guān)系。設(shè)計(jì)中應(yīng)利用各組成部分在內(nèi)容上的內(nèi)在聯(lián)系和表現(xiàn)形式上的相互呼應(yīng),并注意整個(gè)頁(yè)面設(shè)計(jì)風(fēng)格的一致性,實(shí)現(xiàn)視覺(jué)上和心理上的連貫,使整個(gè)頁(yè)面設(shè)計(jì)的各個(gè)部分極為融洽,猶如一氣呵成。</p><p>  分割是指將頁(yè)面分成若干小塊,小塊之間有視覺(jué)上的不同,這樣可以使觀者一目了然。在信息量很多時(shí)為使觀者能夠看清楚,就要注意到將畫(huà)面進(jìn)行有效的分割。分割不僅

56、是表現(xiàn)形式的需要。換個(gè)角度來(lái)講,分割也可以被視為對(duì)于頁(yè)面內(nèi)容的一種分類歸納。</p><p>  對(duì)比是指通過(guò)矛盾和沖突,使設(shè)計(jì)更加富有生氣。對(duì)比手法很多,例如:多與少、曲與直、強(qiáng)與弱、長(zhǎng)與短、粗與細(xì)、疏與密、虛與實(shí)、主與次、黑與白、動(dòng)與靜、美與丑、聚與散等等。在使用對(duì)比的時(shí)候應(yīng)慎重,對(duì)比過(guò)強(qiáng)容易破壞美感,影響統(tǒng)一。</p><p>  和諧是指整個(gè)頁(yè)面符合美的法則,渾然一體。如果一件設(shè)計(jì)

57、作品僅僅是色彩、形狀、線條等的隨意混合,那么作品將不但沒(méi)有“生命感”,而且也根本無(wú)法實(shí)現(xiàn)視覺(jué)設(shè)計(jì)的傳達(dá)功能。和諧不僅要看結(jié)構(gòu)形式,而且要看作品所形成的視覺(jué)效果能否與人的視覺(jué)感受形成一種溝通,產(chǎn)生心靈的共鳴。這是設(shè)計(jì)能否成功的關(guān)鍵。</p><p><b>  3.2 數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p>  數(shù)據(jù)庫(kù)設(shè)計(jì)是指對(duì)于一個(gè)給定的應(yīng)用環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù)庫(kù)模式,建

58、立數(shù)據(jù)庫(kù)及其應(yīng)用系統(tǒng),使之能夠有效地存儲(chǔ)數(shù)據(jù),滿足各種用戶的應(yīng)用需求(信息要求和處理要求)。</p><p><b>  數(shù)據(jù)庫(kù)和設(shè)計(jì)概述</b></p><p>  數(shù)據(jù)庫(kù)是信息系統(tǒng)的核心和基礎(chǔ),把信息系統(tǒng)中大量的數(shù)據(jù)按一定的模型組織起來(lái),提供存儲(chǔ)、維護(hù)、檢索數(shù)據(jù)的功能,使信息系統(tǒng)可以方便、及時(shí)、準(zhǔn)確地從數(shù)據(jù)庫(kù)中獲得所需的信息。</p><p&g

59、t;  數(shù)據(jù)庫(kù)是信息系統(tǒng)的各個(gè)部分能否緊密地結(jié)合在一起以及如何結(jié)合的關(guān)鍵所在。</p><p>  數(shù)據(jù)庫(kù)設(shè)計(jì)是信息系統(tǒng)開(kāi)發(fā)和建設(shè)的重要組成部分。</p><p>  3.2.1概念模型設(shè)計(jì)(E-R圖)</p><p>  數(shù)據(jù)模型是是數(shù)據(jù)特征的抽象,從抽象層次上描述了系統(tǒng)的靜態(tài)特征、動(dòng)態(tài)行為和約束條件,為數(shù)據(jù)庫(kù)系統(tǒng)的信息表與操作提供一個(gè)抽象的框架。描述了數(shù)據(jù)結(jié)構(gòu)、

60、數(shù)據(jù)操作及數(shù)據(jù)約束。 </p><p>  E-R圖概念化地構(gòu)建實(shí)體間關(guān)系的模型,這使得它們區(qū)別于數(shù)據(jù)庫(kù)模型圖。E-R圖的理念是:項(xiàng)目所有參與者能理解E-R圖。E-R圖由不同實(shí)體類型、關(guān)系、特性和類型構(gòu)成。實(shí)體是諸如用戶的實(shí)際對(duì)象,有時(shí)更抽象,但必須有業(yè)務(wù)意義。特性用于描述實(shí)體,關(guān)系用于實(shí)體之間。</p><p>  實(shí)體:現(xiàn)實(shí)世界中的事物;</p><p><

61、;b>  屬性:事物的特性;</b></p><p>  聯(lián)系:現(xiàn)實(shí)世界中事物間的關(guān)系。實(shí)體集的關(guān)系有一對(duì)一、一對(duì)多、多對(duì)多的聯(lián)系。</p><p><b>  本系統(tǒng)的ER圖。</b></p><p>  圖3.4 系統(tǒng)E-R圖</p><p>  3.2.2數(shù)據(jù)庫(kù)表及關(guān)系建立</p>

62、<p>  根據(jù)以上這些步驟就可以創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),依次建立下列表結(jié)構(gòu)。</p><p><b>  用戶基本信息表</b></p><p><b>  用戶詳細(xì)信息表</b></p><p><b>  論壇帖子表</b></p><p><b>  論壇回

63、復(fù)表</b></p><p><b>  論壇版區(qū)表</b></p><p>  表與表之間的關(guān)系如下:</p><p>  用戶基本信息表和用戶詳細(xì)信息表是一對(duì)一的關(guān)系,一個(gè)用戶對(duì)應(yīng)一個(gè)詳細(xì)信息表。</p><p>  用戶基本信息表和論壇帖子表是一對(duì)多的關(guān)系,一個(gè)用戶可以發(fā)表多篇帖子。</p>

64、<p>  用戶基本信息表和論壇回復(fù)表是一對(duì)多的關(guān)系,一個(gè)用戶可以回復(fù)多篇帖子。</p><p>  論壇回復(fù)表和論壇帖子表是一對(duì)多的關(guān)系,一篇帖子后面可以跟多篇回復(fù)。</p><p>  論壇版區(qū)表和論壇帖子表是一對(duì)多的關(guān)系,在一個(gè)版區(qū)中可以含有多篇帖子。</p><p>  3.2.3詳細(xì)數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)</p><p>&l

65、t;b>  1、用戶基本信息表</b></p><p>  用戶基本信息表中存放的是用戶登陸時(shí)所需要或者記錄用戶的基本信息,包含比如登陸名、密碼、最后登陸時(shí)間等。用戶基本信息表的建立主要是記錄用戶最常用的一些信息?!   ?lt;/p><p>  表3.1用戶基本信息表</p><p><b>  2、用戶詳細(xì)信息表</b><

66、;/p><p>  用戶詳細(xì)信息表中存放的是用戶的身高,體重,聯(lián)系方式等詳細(xì)資料,建立此表的目的是把一些用戶不經(jīng)常用到的詳細(xì)信息,單獨(dú)存放到一張表中,可以節(jié)約系統(tǒng)的資源。</p><p>  表3.2 用戶詳細(xì)信息表</p><p><b>  3、論壇帖子表</b></p><p>  論壇帖子表存放的是用戶所發(fā)表的主題帖

67、信息。</p><p>  表3.3 論壇帖子表</p><p><b>  4、論壇回復(fù)表</b></p><p>  論壇回復(fù)表存放的是用戶回復(fù)主題的回復(fù)信息。</p><p>  表3.4 論壇回復(fù)表</p><p><b>  5、論壇版區(qū)表</b></p>

68、;<p>  論壇版區(qū)表是存放的是論壇中版塊信息。</p><p>  表3.5 論壇版區(qū)表</p><p>  第 4 章 系統(tǒng)實(shí)現(xiàn)</p><p>  4.1 系統(tǒng)框架實(shí)現(xiàn)</p><p>  在系統(tǒng)的整體設(shè)計(jì)中,我們采取了三層結(jié)構(gòu)。這樣結(jié)構(gòu)的優(yōu)點(diǎn)是靈活,移植和可維護(hù)性比較高。每個(gè)層在處理程序上都應(yīng)該有一項(xiàng)明確的責(zé)任,而不應(yīng)

69、該在功能上與其它層混合,并且每個(gè)層要與其它層分開(kāi)的。</p><p>  圖4.1 S.S.H框架的結(jié)合使用</p><p>  4.1.1底層數(shù)據(jù)庫(kù)的建立</p><p>  在前期的數(shù)據(jù)庫(kù)選用中,本系統(tǒng)選取了適合中小型網(wǎng)站的MySQL數(shù)據(jù)庫(kù),而在數(shù)據(jù)庫(kù)的設(shè)計(jì)中,本文已經(jīng)確立了表結(jié)構(gòu)。根據(jù)這些就可以創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),在數(shù)據(jù)庫(kù)創(chuàng)建并連接好后,就可以創(chuàng)建表、修改表和刪除

70、表,創(chuàng)建、修改、和刪除主鍵、外鍵等等。選中“spring”數(shù)據(jù)庫(kù),“use spring;”并使用“create table <表名>”sql語(yǔ)句,依次創(chuàng)建以下表結(jié)構(gòu)。</p><p><b>  表4.1表結(jié)構(gòu)</b></p><p>  4.1.2持久化層的建立(Hibernate)</p><p>  本論壇利用了DAO設(shè)計(jì)模

71、式結(jié)合Hibernate框架來(lái)創(chuàng)建數(shù)據(jù)持久化層。DAO(Data Access Object)模式稱為數(shù)據(jù)訪問(wèn)對(duì)象模式,其本質(zhì)是向外部提供一個(gè)訪問(wèn)數(shù)據(jù)源的統(tǒng)一接口,對(duì)外隱藏操作數(shù)據(jù)源的實(shí)現(xiàn)細(xì)節(jié),而DAO的實(shí)現(xiàn)使用的是Hibernate。首先,在spring的配置文件bean.xml中配置dataSource、sessionFactory、transactionManager,然后編寫(xiě)entity層中的實(shí)體類。在實(shí)體類中,需要加上無(wú)參的空

72、實(shí)現(xiàn)的構(gòu)造器,還有g(shù)etter和setter方法。Hibernate通過(guò)注解來(lái)映射(OR)對(duì)象。注解比以往使用xml文檔實(shí)現(xiàn)的映射文件更加便捷,只需在實(shí)體類中標(biāo)記“@entity”、“@Id”等,便可聲明Hibernate中持久化類的屬性與數(shù)據(jù)庫(kù)對(duì)應(yīng)表之間字段的映射關(guān)系。接著是DAO接口的定義。DAO接口中定義了特定持久化類所對(duì)應(yīng)的抽象業(yè)務(wù)邏輯方法。最后是DAO接口的實(shí)現(xiàn)類。該類利用HibernateAPI實(shí)現(xiàn)DAO接口所定義的抽象方法

73、。這樣的設(shè)計(jì)的有利于當(dāng)改用其他的持久化機(jī)制或持久化中間件時(shí)(例如,出現(xiàn)了更好地ORM框架),由于</p><p>  4.1.3業(yè)務(wù)邏輯層的建立</p><p>  本系統(tǒng)的業(yè)務(wù)邏輯是交由Struts中的Action進(jìn)行判斷的,比如判斷登陸的業(yè)務(wù)邏輯時(shí),會(huì)建立一個(gè)LoginAction類來(lái)進(jìn)行邏輯判斷,而一些關(guān)聯(lián)的映射,本系統(tǒng)是寫(xiě)在Struts的struts.xml中。</p>

74、<p>  從編碼的視角來(lái)看,這層是最容易被忽視的一層。 我們往往在持久層周圍看到這些業(yè)務(wù)處理的代碼,這其實(shí)是不正確的,因?yàn)樗鼘?dǎo)致了程序代碼的緊密偶合,這樣一來(lái),隨著時(shí)間推移這些代碼很難維護(hù)。針對(duì)這一問(wèn)題,本系統(tǒng)可以使用Spring框架來(lái)解決,利用Spring框架中的“依賴注射”(“控制反轉(zhuǎn)”)把程序中所涉及到包含業(yè)務(wù)邏輯和Dao的Objects,例如transaction management handler(事物管理控

75、制)、Object Factoris(對(duì)象工廠)、service objects(服務(wù)組件)都放在Spring的容器中,通過(guò)Spring來(lái)管理。這種方式讓你的對(duì)象從創(chuàng)建中釋放了出來(lái),降低了偶合度。</p><p>  4.1.4表示層的建立</p><p>  在表示層上,主要是基于JSP和AJAX異步傳輸技術(shù)來(lái)進(jìn)行建立,最后通過(guò)Struts框架的struts.xml文件進(jìn)行關(guān)聯(lián)映射.具體

76、的頁(yè)面設(shè)計(jì),會(huì)在后面的章節(jié)中進(jìn)行介紹。</p><p>  4.2 系統(tǒng)功能模塊實(shí)現(xiàn)</p><p>  4.2.1用戶模塊實(shí)現(xiàn)</p><p>  在用戶模塊的設(shè)計(jì)中,首先完成的是業(yè)務(wù)邏輯層的相應(yīng)action類的編寫(xiě),之后在通過(guò)具體的需要,編寫(xiě)相應(yīng)的數(shù)據(jù)庫(kù)訪問(wèn)DAO。在一切結(jié)束之后,從DAO和業(yè)務(wù)邏輯類中抽象出接口,通過(guò)Spring的IOC對(duì)接口進(jìn)行對(duì)象注入。&l

77、t;/p><p>  在模塊的設(shè)計(jì)過(guò)程中,遇到的難點(diǎn)是在注冊(cè)時(shí)使用的AJAX異步傳輸,來(lái)判斷用戶名是否可以被注冊(cè)。AJAX技術(shù)是一個(gè)基于Javascript腳本語(yǔ)言的技術(shù),目前對(duì)這種技術(shù)的使用還不是很多,但通過(guò)反復(fù)的調(diào)試,逐漸的掌握了AJAX的要點(diǎn)。</p><p><b>  其主要代碼如下:</b></p><p>  圖4.2 AJAX技術(shù)

78、在本系統(tǒng)中的應(yīng)用</p><p>  當(dāng)用戶登錄時(shí),會(huì)有“自動(dòng)登錄”的選項(xiàng),其實(shí)現(xiàn)是在登錄時(shí),檢測(cè)是否勾選“自動(dòng)登錄”,若勾選了,會(huì)往瀏覽器發(fā)送cookie,以保留登錄信息,下次訪問(wèn)時(shí)就不用再輸入用戶名和密碼就可以自動(dòng)登錄了。</p><p>  發(fā)送cookie代碼如下:</p><p>  接收cookie代碼(攔截器)如下:</p><p&

79、gt;  圖4.3 cookie的應(yīng)用</p><p>  當(dāng)用戶登錄成功后,用戶可以選擇進(jìn)入到個(gè)人中心,來(lái)管理個(gè)人信息。個(gè)人中心分為用戶的操作框和具體信息顯示框兩部分。用戶可以選擇修改簽名、編輯頭像、更改個(gè)人信息等操作。</p><p><b>  圖4.4個(gè)人中心</b></p><p>  4.2.2帖子模塊實(shí)現(xiàn)</p>&

80、lt;p>  帖子模塊的完成流程和用戶模塊類似,都是先根據(jù)JSP網(wǎng)頁(yè),建立相應(yīng)的Action邏輯判斷類,之后建立和帖子有關(guān)的數(shù)據(jù)庫(kù)訪問(wèn)DAO,最后抽象出接口進(jìn)行依賴注入。編寫(xiě)帖子模塊首先遇到的難點(diǎn)是分頁(yè)功能的實(shí)現(xiàn),當(dāng)打開(kāi)某個(gè)論壇時(shí),如果論壇中的帖子數(shù)量不能在一頁(yè)中顯示出來(lái),那么怎樣進(jìn)行處理。在一些參考學(xué)習(xí)后,本系統(tǒng)最后編寫(xiě)了一個(gè)分頁(yè)類,來(lái)解決這個(gè)難題。Pages.java、PageList.java位于com.oyj.forum.

81、service.web包下,其中的屬性有:</p><p>  表4.2 Pages類的屬性</p><p>  表4.3 PageList類的屬性</p><p><b>  圖4.5分頁(yè)的實(shí)現(xiàn)</b></p><p>  當(dāng)用戶進(jìn)入某版塊時(shí),就會(huì)顯示出分頁(yè)信息,并且把相關(guān)的帖子發(fā)列表送給用戶。當(dāng)我們每次查看某個(gè)帖子

82、,或回復(fù)某個(gè)帖子時(shí),回復(fù)數(shù)量、點(diǎn)擊數(shù)量都會(huì)進(jìn)行自增。進(jìn)入帖子后,系統(tǒng)會(huì)根據(jù)文章發(fā)表時(shí)間的順序,將帖子和相關(guān)的回復(fù)顯示出來(lái)。</p><p><b>  圖4.6查看帖子</b></p><p>  4.2.3后臺(tái)管理模塊實(shí)現(xiàn)</p><p>  后臺(tái)管理模塊是管理員對(duì)論壇進(jìn)行管理的平臺(tái)。管理員可以在此模塊中主要完成對(duì)帖子和用戶的管理,管理員可以

83、通過(guò)用戶的ID和用戶名對(duì)其進(jìn)行搜索,從而實(shí)現(xiàn)管理。</p><p>  圖4.7 管理員對(duì)用戶進(jìn)行管理</p><p>  此外管理員還可以進(jìn)行添加,修改論壇信息。</p><p>  圖4.8管理員對(duì)版區(qū)進(jìn)行管理</p><p>  第 5 章 系統(tǒng)測(cè)試</p><p><b>  5.1 測(cè)試概述<

84、/b></p><p>  5.1.1軟件測(cè)試的目的</p><p>  軟件測(cè)試是軟件開(kāi)發(fā)過(guò)程中的一個(gè)重要組成部分,其目的就是對(duì)軟件產(chǎn)品(包括階段性成果)進(jìn)行驗(yàn)證和確認(rèn)的活動(dòng)過(guò)程,盡快盡早地發(fā)現(xiàn)在軟件產(chǎn)品中所存在的各種問(wèn)題。</p><p>  軟件測(cè)試是由“驗(yàn)證(verification)”和“有效性確認(rèn)(validation)”活動(dòng)構(gòu)成的整體:</

85、p><p>  “驗(yàn)證”是檢驗(yàn)軟件是否已正確地實(shí)現(xiàn)了產(chǎn)品規(guī)格書(shū)所定義的系統(tǒng)功能和特性。驗(yàn)證過(guò)程提供證據(jù)表明軟件相關(guān)產(chǎn)品與所有生命周期活動(dòng)的要求(如正確性、完整性、一致性、準(zhǔn)確性等)相一致。相當(dāng)于以軟件產(chǎn)品設(shè)計(jì)規(guī)格說(shuō)明書(shū)為標(biāo)準(zhǔn)進(jìn)行軟件測(cè)試的活動(dòng)。</p><p>  “有效性確認(rèn)”是確認(rèn)所開(kāi)發(fā)的軟件是否滿足用戶真正需求的活動(dòng)。一切從客戶出發(fā),理解客戶的需求,對(duì)軟件需求定義、設(shè)計(jì)的懷疑,發(fā)現(xiàn)需求定

86、義和產(chǎn)品設(shè)計(jì)中的問(wèn)題。這主要通過(guò)各種軟件評(píng)審活動(dòng)來(lái)實(shí)現(xiàn),包括讓客戶參加評(píng)審、測(cè)試活動(dòng)。</p><p>  5.1.2軟件測(cè)試的任務(wù)</p><p><b>  尋找Bug;</b></p><p>  避免軟件開(kāi)發(fā)過(guò)程中的缺陷;</p><p><b>  衡量軟件的品質(zhì);</b></p&g

87、t;<p><b>  關(guān)注用戶的需求。</b></p><p>  總的目標(biāo)是:確保軟件的質(zhì)量。</p><p><b>  5.1.3測(cè)試環(huán)境</b></p><p>  測(cè)試環(huán)境是在windows版本的Tomcat7.0下進(jìn)行的。</p><p><b>  5.2 單

88、元測(cè)試</b></p><p>  單元測(cè)試是在編碼階段,針對(duì)每個(gè)程序單元而進(jìn)行的測(cè)試,其測(cè)試的對(duì)象是程序系統(tǒng)中的最小單元——類、函數(shù)、模塊或組件等。單元測(cè)試主要使用白盒測(cè)試方法,從程序的內(nèi)部結(jié)構(gòu)出發(fā)設(shè)計(jì)測(cè)試用例,檢查程序模塊或組件已實(shí)現(xiàn)的功能與定義的功能是否一致,以及編碼中是否存在錯(cuò)誤。白盒測(cè)試使用了junit工具,結(jié)合Spring的事務(wù)管理,可以在不對(duì)數(shù)據(jù)庫(kù)產(chǎn)生任何影響下,安全地進(jìn)行白盒測(cè)試,并且

89、測(cè)試時(shí)可以使用Spring的容器,省去了創(chuàng)建對(duì)象的操作。</p><p>  以下為UserInfoDAOimpl.java的部分測(cè)試代碼。</p><p>  以下為BoardDAOimplTest.java的部分測(cè)試代碼。</p><p><b>  5.3 集成測(cè)試</b></p><p>  集成測(cè)試,也稱組裝測(cè)

90、試、聯(lián)合測(cè)試、子系統(tǒng)測(cè)試,在單元測(cè)試的基礎(chǔ)上,按照設(shè)計(jì)要求不斷進(jìn)行集成而進(jìn)行的相應(yīng)測(cè)試,目的是發(fā)現(xiàn)單元之間的接口問(wèn)題,如接口參數(shù)類型不匹配、接口數(shù)據(jù)在傳輸中丟失、數(shù)據(jù)誤差不斷積累等問(wèn)題。</p><p>  選擇什么樣的方式把單元組裝起來(lái)形成一個(gè)可運(yùn)行的系統(tǒng),直接影響到測(cè)試成本,測(cè)試計(jì)劃、測(cè)試用例的設(shè)計(jì)、測(cè)試工具的選擇等。本論壇采用漸增式集成。首先對(duì)某兩、三個(gè)單元進(jìn)行測(cè)試,然后將這些單元逐步組裝成較大的系統(tǒng)。在組

91、裝的過(guò)程中,一邊連接一邊測(cè)試,以發(fā)現(xiàn)連接過(guò)程中產(chǎn)生的問(wèn)題,最后完成所有單元的集成,構(gòu)造為一個(gè)完整的論壇。</p><p><b>  5.4 功能測(cè)試</b></p><p>  功能測(cè)試應(yīng)該在集成測(cè)試完成之后進(jìn)行,而且是針對(duì)應(yīng)用系統(tǒng)進(jìn)行測(cè)試。功能測(cè)試是基于產(chǎn)品功能說(shuō)明書(shū)、用戶角度來(lái)對(duì)各項(xiàng)功能進(jìn)行驗(yàn)證,以確認(rèn)每個(gè)功能是否都能正常使用。在測(cè)試時(shí),不考慮程序內(nèi)部結(jié)構(gòu)和實(shí)現(xiàn)

92、方式,只檢查程序功能是否按照需求規(guī)格說(shuō)明書(shū)的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)而產(chǎn)生正確的輸出信息,并且保持外部信息(如數(shù)據(jù)庫(kù)或文件)的完整性。功能測(cè)試包括用戶界面、各種操作、不同的數(shù)據(jù)輸入輸出和存儲(chǔ)等的測(cè)試。</p><p>  表5.1登陸測(cè)試用例</p><p>  表5.2發(fā)貼測(cè)試用例</p><p><b>  第 6 章 總結(jié)</

93、b></p><p>  經(jīng)過(guò)努力,已經(jīng)基本完成了BBS系統(tǒng)的開(kāi)發(fā)和設(shè)計(jì)。完成了用戶模塊、帖子模塊和后臺(tái)管理模塊的開(kāi)發(fā),并基本實(shí)現(xiàn)了前期所制定的功能。</p><p>  BBS系統(tǒng)在不斷的設(shè)計(jì)更改過(guò)程中,逐漸的成熟。在編碼階段,參考了一些設(shè)計(jì)模式,在業(yè)務(wù)邏輯代碼和數(shù)據(jù)庫(kù)連接DAO中抽象出了若干接口,并對(duì)其進(jìn)行了對(duì)象的依賴注入,大大的減少了模塊之間的耦合,使系統(tǒng)具有很高的靈活性和可維

94、護(hù)性,這是BBS系統(tǒng)最大的優(yōu)點(diǎn)。</p><p>  系統(tǒng)的另一個(gè)優(yōu)點(diǎn)就是JQuery和AJAX異步傳輸技術(shù)的結(jié)合使用,既減輕了服務(wù)器的負(fù)擔(dān),也加快了用戶的訪問(wèn)效率。</p><p>  當(dāng)然BBS系統(tǒng)也存在很多不足的地方,比如用戶的權(quán)限判斷過(guò)于簡(jiǎn)單,安全性低,希望在今后的學(xué)習(xí)中,逐步的進(jìn)行改進(jìn)。</p><p>  通過(guò)這次的設(shè)計(jì),加深了對(duì)S.S.H框架,以及AJ

95、AX的一些理解。對(duì)于軟件工程方面的設(shè)計(jì)思想也有了更深一步的理解,只有在不斷的實(shí)踐于學(xué)習(xí)中,才會(huì)得到最豐厚的回報(bào)。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1]馬賽斯扎克.實(shí)用軟件工程[M].北京:機(jī)械工業(yè)出版社,2007,391-420.</p><p>  [2]劉易斯.數(shù)據(jù)庫(kù)與事務(wù)處理[M].北京:機(jī)械工業(yè)出版社

96、,2005,10-35.</p><p>  [3]Dave Crane.Ajax in Action[M].北京:人民郵電出版社,2006,289-338.</p><p>  [4]孫衛(wèi)琴.精通struts[M].北京:電子工業(yè)出版社,2004,50-70.</p><p>  [5]孫衛(wèi)琴.精通hibernate[M].北京:電子工業(yè)出版社,2005,100-

97、120.</p><p>  [6]林信良.spring2.0技術(shù)手冊(cè)[M].北京:電子工業(yè)出版社,2006,50-100.</p><p>  [7]佚名.MySQL數(shù)據(jù)庫(kù)下的JSP分頁(yè)查詢模塊源碼[EB/OL].http://developer.51cto.com/art/200907/132916.htm.</p><p>  [8](美)MartyHall.

98、Servlet與JSP核心編程[M].北京:清華大學(xué)出版社,2009,54-56.</p><p>  [9]馮燕奎,趙德奎.JSP實(shí)用案例教程[M].北京:清華大學(xué)出版社,2004,70-100.</p><p>  [10](美)Jim Arlow.UML2.0 and the Unified Process[M].北京:機(jī)械工業(yè)出版社,2006,30-40.</p>&

99、lt;p>  [11]徐建波,周新蓮.Web設(shè)計(jì)原理于編程技術(shù)[M].北京:中南大學(xué)出版社,2005,185-193.</p><p>  [12]孫鑫編.Java Web開(kāi)發(fā)詳解[M].北京:電子工業(yè)出版社,2006,189-274.</p><p>  [13]林上杰,林康司.JSP2.0技術(shù)手冊(cè)[M].北京:電子工業(yè)出版社,2004,3-6.</p><p&

100、gt;  [14]薩師煊,王珊.數(shù)據(jù)庫(kù)系統(tǒng)概論(第三版)[M].北京:高等教育出版社,1998.</p><p>  [15]蔡劍,景楠.Java Web應(yīng)用開(kāi)發(fā):J2EE和Tomcat[M].北京:清華大學(xué)出版社,2004.</p><p>  [16]朱少民.軟件測(cè)試方法和技術(shù)[M].北京:清華大學(xué)出版社,2010.</p><p><b>  致

101、謝</b></p><p>  歷時(shí)將近三個(gè)月的時(shí)間終于將畢業(yè)設(shè)計(jì)和論文完成,在畢業(yè)設(shè)計(jì)的完成過(guò)程中遇到很多的困難,都在同學(xué)和老師的幫助下克服了。尤其要感謝我的指導(dǎo)老師,XXX老師,他對(duì)我進(jìn)行了無(wú)私的指導(dǎo)和幫助,悉心地幫助我進(jìn)行論文的修改。</p><p>  感謝這篇論文所涉及到的各位學(xué)者。本文引用了數(shù)位學(xué)者的研究文獻(xiàn),如果沒(méi)有各位學(xué)者的研究成果的幫助和啟發(fā),我將很難完成本篇

102、論文的寫(xiě)作。</p><p>  感謝我的同學(xué)和朋友,在我開(kāi)發(fā)論壇和寫(xiě)論文的過(guò)程中給予我很多的啟發(fā)和指導(dǎo),還在論文的撰寫(xiě)和排版過(guò)程中提供熱情的幫助。</p><p>  由于我的學(xué)術(shù)水平有限,所寫(xiě)論文難免有不足之處,懇請(qǐng)各位老師和學(xué)友批評(píng)和指正!在完成畢業(yè)設(shè)計(jì)期間,感謝我的朋友對(duì)我的幫助,在我困難的時(shí)候提出了很好的建議,在此表示深深的感謝。</p><p>  字?jǐn)?shù)

溫馨提示

  • 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ù)僅提供信息存儲(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)論