版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 本科畢業(yè)論文(設計)</p><p> 二〇一三年 五月 十五日</p><p> 題 目基于Struts2的BBS論壇系統(tǒng)設計與實現</p><p> 作 者</p><p> 學 院信息科學與工程學院</p><p> 專 業(yè)計算機科學與技術專業(yè)</p>
2、<p> 學 號</p><p> 指導教師xx 講師</p><p><b> 摘 要</b></p><p> 隨著時代的推進,網絡統(tǒng)領時代潮流,如今已經普及于人類的生產和日常生活之中?;ヂ?lián)網是對現實世界的模擬,互聯(lián)網憑借著高效性,跨區(qū)域性,即時性,擴展和改變著我們所生活的現實世界。BBS作為一種簡便、松散、充滿個性的
3、現代電子遠程通訊手段,現在在國內得到廣泛的應用。BBS論壇是互聯(lián)網上很常見的一種實時動態(tài)的交流平臺。</p><p> 本次設計的基于J2EE的BBS論壇系統(tǒng),定位于綜合類業(yè)余論壇,主要用戶群體是普通用戶。該論壇在網絡環(huán)境的支持下,具有支持用戶進行發(fā)表文章等功能。具體包含3個模塊,分別是會員模塊,帖子模塊和論壇管理模塊。會員模塊主要是對會員的個人屬性管理,帖子模塊是針對帖子的管理,而論壇管理模塊針對論壇版塊、公
4、告和廣告的管理。</p><p> 本論壇將采用B/S體系結構,在Struts框架的基礎上,結合當今主流的網站開發(fā)技術Java語言以及JSP技術。人們通過瀏覽器就可以訪問本網站的主頁,保證服務器的安全。數據庫采用免費,易用的MySQL數據庫。該論壇功能較齊全,在這里可以自由地發(fā)表自己的觀點或對論壇的主題發(fā)表意見,我們還可以對網友的問題及時地解決,獲取對自己有用的知識。本系統(tǒng)嚴格按照軟件項目開發(fā)的流程進行開發(fā),系
5、統(tǒng)開發(fā)的可行性分析、需求分析、概要設計、詳細設計以及對系統(tǒng)的測試與維護都有詳細的論述。</p><p> 關鍵字:Java;B/S;Struts;BBS</p><p><b> Abstract</b></p><p> Along with the advancement of era, network has been spread
6、 in human production and daily life. The Internet is a simulation of the real world, with high efficiency, trans-regional, immediacy, and changing the world we live in a reality.BBS as a kind of simple and loose and full
7、 of personality in modern electronic communications, now widely used in China. BBS is a very common on the Internet a real-time dynamic communication platform. </p><p> The BBS system based on J2EE is desig
8、ned, aimed at amateur BBS, and its main user groups is ordinary users. The system with the support of network environment will support users publish articles, etc. The System includes three modules, respectively is membe
9、r module, the posts module and management module. Member module is the management of personal property. Posts module manage posts and management module manage section, announcements, and advertising.</p><p>
10、 BBS adopts B/S architecture, on the basis of the Struts framework, combined with today's mainstream Java language website development technology and JSP technology. People can access the site via a browser page, an
11、d ensure the safety of server. The MySQL database is adopted which free and easy-to-use. The BBS function is relatively complete. Here you can freely published their own views and opinions on the theme of the BBS, and al
12、so can solve problems in a timely manner of online friends, to get</p><p> Key words:Java;B/S;Struts;BBS</p><p><b> 目 錄</b></p><p><b> 摘 要I</b></p>
13、<p> AbstractII</p><p><b> 第一章 緒論1</b></p><p><b> 1.1選題背景1</b></p><p><b> 1.2系統(tǒng)簡介1</b></p><p> 1.2.1 BBS研究現狀1</p
14、><p> 1.2.2 Struts2框架2</p><p> 1.3 系統(tǒng)設計目的3</p><p> 1.4 系統(tǒng)設計意義3</p><p> 1.5 論文結構4</p><p> 第二章 系統(tǒng)分析6</p><p> 2.1 系統(tǒng)開發(fā)初步調查6</p>&
15、lt;p> 2.1.1 論壇規(guī)模大小6</p><p> 2.1.2 管理機制是否健全6</p><p> 2.1.3 論壇信息時效性6</p><p> 2.2 系統(tǒng)可行性研究分析7</p><p> 2.3 需求分析7</p><p> 2.4 數據流圖與設計8</p>
16、<p> 2.4.1 數據流圖設計9</p><p> 2.4.2 論壇業(yè)務流程圖10</p><p> 2.5 開發(fā)平臺與開發(fā)工具11</p><p> 第三章 總體設計12</p><p> 3.1 功能模塊12</p><p> 3.2 數據庫概念設計12</p>
17、<p> 3.2.1 設計方法13</p><p> 3.2.2 設計步驟13</p><p> 3.2.3 設計范式14</p><p> 3.3 E-R模型圖16</p><p> 3.3.1 用戶與帖子實體分析16</p><p> 3.3.2 帖子與版塊實體分析17</p
18、><p> 3.3.3 全局E-R分析17</p><p> 3.4數據庫邏輯設計18</p><p> 第四章 系統(tǒng)設計與實現21</p><p> 4.1 開發(fā)框架說明21</p><p> 4.1.1 框架工作原理21</p><p> 4.1.2 框架工作流程22&l
19、t;/p><p> 4.2 系統(tǒng)架構設計22</p><p> 4.3 系統(tǒng)設計模式23</p><p> 4.4 系統(tǒng)實現25</p><p> 4.4.1 數據訪問接口包Dao25</p><p> 4.4.2 系統(tǒng)實體包Model28</p><p> 4.4.3 工具類
20、包Util30</p><p> 4.4.4 控制類包Web33</p><p> 4.5 系統(tǒng)運行35</p><p> 第五章 系統(tǒng)測試37</p><p> 5.1 系統(tǒng)測試環(huán)境37</p><p> 5.2 單元測試37</p><p> 5.2.1 黑盒測試3
21、7</p><p> 5.2.2 白盒測試38</p><p> 5.2.2 模塊接口測試39</p><p> 5.3 集成測試40</p><p> 5.3.1 自頂向下集成40</p><p> 5.4 確認測試40</p><p><b> 總結41&l
22、t;/b></p><p><b> 參考文獻42</b></p><p><b> 致謝43</b></p><p> 附錄 代碼示例44</p><p><b> 分頁類的實現44</b></p><p> 數據庫連接類的實現
23、47</p><p> 用戶操作數據庫類49</p><p><b> 系統(tǒng)配置文件56</b></p><p><b> 第一章 緒論</b></p><p><b> 1.1選題背景</b></p><p> 隨著網絡的迅猛發(fā)展,網絡
24、用戶要求不斷提高計算機科學技術的發(fā)展水平,特別是新興的網絡論壇,各個網站中都需要用戶注冊,才能進行該網站的更多娛樂操作,而且在網站中還設有瀏覽者留言、意見反饋等功能,這些功能都只是為了網絡開發(fā)部及網絡維護員們對該網站進行修改和更新。</p><p> 在這些現狀中我們可以發(fā)現這樣一個事實,每個用戶在瀏覽網頁上的內容時,只是對網站的部分內容感興趣,而且這種興趣會持續(xù)一段時間。因為在瀏覽了這個網頁之后,用戶只是單純
25、的瀏覽了網頁的內容,其他的所有用戶都是如此,這樣大大減少了用戶再次登錄該網站進行瀏覽的可能性,這是網站的點擊率的一個重要缺陷。正如我們的BBS(Bulletin Board System,簡稱BBS,電子公告板系統(tǒng))系統(tǒng)能夠添加到其中就能彌補這個缺陷,BBS論壇是各個用戶在瀏覽了網站內容后,可以發(fā)表自己對網站的意見,各個用戶之間也可以通過發(fā)帖的形式進行技術和經驗的交流。</p><p><b> 1.
26、2系統(tǒng)簡介</b></p><p> 1.2.1 BBS研究現狀</p><p> BBS全稱為電子公告板,是Internet上的一種電子信息服務系統(tǒng),是目前流行網絡論壇的前身。它提供一塊公共電子白板,每個用戶都可以在上面書寫,可發(fā)布信息或提出看法;它是一種交互性強,內容豐富而及時的Internet電子信息服務系統(tǒng),用戶在BBS站點上可以獲得各種信息服務、發(fā)布信息、進行討論
27、、聊天等等[1]。早期BBS的型態(tài)大多在終端機上以單色或彩色的純文字呈現畫面,并使用調制解調器撥接或Telnet協(xié)議連接。但隨著HTTP網絡協(xié)議及HTML等網頁技術的發(fā)展,BBS的型態(tài)也轉變?yōu)榫W絡論壇或網絡社區(qū)等多元樣貌,早期撥接與Telnet式的BBS系統(tǒng)則快速式微[1]。本文設計的論壇系統(tǒng)指的是以HTTP協(xié)議連接,能夠提供web服務的論壇系統(tǒng)。</p><p> 在計算機技術發(fā)達的西方國家,特別是美國,BB
28、S發(fā)展迅速。隨著互聯(lián)網技術的發(fā)展與完善,就美國而言,目前BBS的主要發(fā)展方向是新聞類、電子商務和博客類,這三類網站經過整合逐步從BBS中分離出來,并成為各自的門戶。第四個功能互動式問答正在分離,但還沒有出現該領域的門戶網站,這一類網站模式被成為威客(譯自英文witkey)模式[1]。近幾年,美國的BBS系統(tǒng)主要采用的是PHP(Hypertext Preprocessor,簡稱PHP,英文超文本預處理語言)技術,因為此語言風格類似于C語言
29、,加之C語言在美國使用廣泛,所以PHP才得以推廣使用。其實,國外對BBS的直接研究很少,間接的研究主要集中在對網絡社會、虛擬社區(qū)方面,這些不屬于本文討論的范圍。</p><p> 由于種種原因,國內的計算機技術水平遠遠落后于西方國家。中國的BBS起步于90年代,由于互聯(lián)網尚未得到廣泛的普及,當時的用戶訪問量每天只有幾十人,導致對BBS的研究較為缺乏。近幾年,國內計算機技術水平的發(fā)展,使得BBS系統(tǒng)進入了調整和成
30、熟期。就國內大陸高校的BBS而言,主要體現了四個特點,分別是普及率高,影響深刻和注重管理。高校中的BBS具有廣告少、訪問速度快、用戶認同感等特點,因此在高校師生中普及率相當高。同時,高校BBS中的信息與學校日常工作、校園生活有關,成為廣大高校師生樂于使用的信息平臺,交友平臺,甚至在一定程度上發(fā)揮了校園門戶的作用[3]。國內BBS的發(fā)展,很大程度上借鑒了美國BBS。因此,在建站技術上,也采用了用戶群較廣的PHP語言。雖然PHP語言的語法簡
31、單,有成熟的社區(qū)支持,但是,面對企業(yè)級的開發(fā),則顯得力不從心。PHP語言對多線程和網絡編程支持不好,語法不嚴謹,第三方開源的系統(tǒng)框架較少[6,12]。這些都制約了BBS的發(fā)展。因此,這也是本文不采用PHP語言開發(fā)而采用Java語言結合第三方開源框架開發(fā)的原因。</p><p> 目前,國內BBS數量巨大,各種各樣的BBS如同網絡雨后春筍般的出現。論壇幾乎涵蓋了我們生活的各個方面,每個人都可以找到一個自己感興趣的
32、論壇。論壇按其盈利性質可以分為商業(yè)論壇和業(yè)余論壇,按其專業(yè)性質可以分為綜合類論壇和專題類論壇。綜合類的論壇包含的信息比較豐富和廣泛,能夠吸引幾乎全部的網民來到論壇,通常大型的門戶網站有足夠的人氣和凝聚力以及強大的后盾支持能夠把門戶類網站做到很強大,但是對于小型規(guī)模的網絡公司,或個人簡歷的論壇網站,就傾向于選擇專題性的論壇,來做到精致。專題類的論壇,能夠吸引真正志同道合的人一起來交流探討,有利于信息的分類整合和搜集,專題性論壇對學術科研教
33、學都起到重要的作用,但是缺點是受眾人群較小,很難得到推廣。</p><p> 本文設計的基于Struts2框架的BBS論壇系統(tǒng),定位于綜合類業(yè)余論壇,主要用戶群體是普通用戶。該論壇在網絡環(huán)境的支持下,具有支持用戶進行發(fā)表文章等功能。具體包含3個模塊,分別是會員模塊,帖子模塊和論壇管理模塊。會員模塊主要是對會員的個人屬性管理,帖子模塊是針對帖子的管理,而論壇管理模塊針對論壇版塊、公告和廣告的管理。</p&g
34、t;<p> 1.2.2 Struts2框架</p><p> Struts2是一個用于創(chuàng)建企業(yè)級Java web應用程序的優(yōu)雅的、可擴展的框架。該框架旨在簡化開發(fā)的整個周期,從建設、部署到維護應用程序。Struts2最初稱為WebWork2。在獨立工作好幾年后,WebWork和Struts社區(qū)聯(lián)手創(chuàng)建Struts2。這個新版本的Struts是簡單的使用。因為Struts2的本質是采用攔截器的機
35、制來處理用戶的請求,這樣的設計也使得業(yè)務邏輯控制器能夠與ServletAPI完全脫離開。因為Struts2以WebWork為核心,所以Struts2可以理解為WebWork的更新產品[2]。</p><p> Struts2是一個相當強大的MVC Web開源框架。它的框架結構清晰,開發(fā)流程一目了然,開發(fā)人員可以很好的掌控開發(fā)的過程。同時,它還提供了強大的OGNL(Object-GraphNavigationLa
36、nguage,簡稱OGNL,表達式語言)進行參數傳遞,成為Struts2里訪問各種作用域中數據的簡單方式,你可以方便獲取Request、Attribute等中的數據,大大簡化了開發(fā)人員在獲取數據時的代碼量[8]。Struts2已經把模塊化作為了體系架構中的基本思想,可以通過三種方法來將應用程序模塊化:將配置信息拆分成多個文件;把自包含的應用模塊創(chuàng)建為插件;創(chuàng)建新的框架特性,即將與特定應用無關的新功能組織成插件,以添加到多個應用中去。St
37、ruts2最大的優(yōu)點在于它的攔截器。它的核心就是攔截器,是一個Action級別的AOP(AspectOrientedProgramming,簡稱AOP,面向切面編程),Struts2中的許多特性都是通過攔截器來實現的,例如異常處理,文件上傳,驗證等。攔截器是可配置與重用的,可以將一些通用的功能如:登錄驗證,權限驗證等置于攔截器中以完成一些Java Web</p><p> 1.3 系統(tǒng)設計目的</p>
38、;<p> 當今網絡技術逐漸滲入社會生活各個層面,以前網站上的論壇管理系統(tǒng)要求用戶登陸以后才能進行相關訪問及互動。而隨著網絡互聯(lián)技術的進步,現在網站投票只需打開網頁就可進行論壇留言。論壇對象是很多的,各個層次的人群都可進行論壇訪問,大至國家領導,小至一個普通干部,從當初指定用戶書面表達到現在通過網絡直接點擊相應主題就可進行留言。</p><p> 網上論壇管理系統(tǒng)可解決游客訪問及留言,所以現在幾
39、乎各個網站都有各種類型網站論壇管理系統(tǒng),管理者可以直觀快捷的解決游客或用戶的留言或提問。因此本文提出了本課題的研究,建立一個友好的、多功能的、輕松的交流平臺,方便所有在線用戶之間的交流溝通;為大家提供一個美觀、文明的暢聊平臺,論壇中還為帖子按類型進行分類,既方便了管理員對論壇的管理,又方便了用戶對帖子和論壇信息的了解,為用戶提供了最高的效率和最便捷的手段。</p><p> 本論壇定位于個人業(yè)余綜合類論壇,因此
40、,無論開發(fā)成本還是系統(tǒng)的規(guī)模,都在可控的范圍內。設計本系統(tǒng)的目的不僅方便論壇會員之間的交流與學習,同樣也對以前的信息管理、論壇管理提出了革新的要求。相對于以前人們獲取信息的途徑,本次設計的論壇不僅縮短了用戶之間的時空距離,同時加快了信息的獲取速度。論壇的管理,一直是管理員們較為棘手的問題,一是從人員的流動性以及數量上來說,人員比較難管理;二是從信息的特性上來說,信息需要分類及更新,因此也是比較難管理。</p><p&
41、gt; 1.4 系統(tǒng)設計意義</p><p> 隨著網絡交流平臺的發(fā)展,網絡發(fā)帖的論壇方式已經成為了主要的交流平臺,現在論壇交流方式越來越平凡,用戶只要上網就能了解更多的網絡信息和跟其他的用戶進行經驗交流、信息采納。通過這種在網上暢快的留言,發(fā)表見解的交流方式,并且網絡界中各方面人才眾多,你便可以與別人分享和交流經驗,最終達到彼此共進步的目的。</p><p> 論壇網站簡單大方、美
42、觀,使人容易瀏覽,像這樣的網站針對的對象是廣大的上網者,他們都有權在該網站注冊并進行暢談;網站不斷的更新帖子,網絡瀏覽者不會對該網站厭倦,并且對該論壇有什么不滿都可以發(fā)表意見,使管理者與用戶之間也進行了交流,使得交流面更加廣泛。</p><p> 論壇網站的設計,不僅給用戶帶來人性化的體驗,而且也對論壇的日常管理也有重大意義。在當代計算機技術飛速發(fā)展的大環(huán)境下,計算機技術和軟件技術的更新是論壇完全有可能也有能力
43、采用這樣先進的管理技術。因此本系統(tǒng)對論壇管理帶來的影響可以看到:對傳統(tǒng)信息交流理念的沖擊,可能引起信息交流管理的變動;對論壇工作人員的要求提高,使論壇在一定的可能下進行整合與發(fā)展,迫使工作人員繼續(xù)學習新知識,拓寬論壇在市場環(huán)境下的生存空間。</p><p><b> 1.5 論文結構</b></p><p> 本文主要從五個章節(jié)對整個BBS系統(tǒng)進行詳細介紹,從系統(tǒng)
44、的分析、設計到具體的實現,完全按照軟件開發(fā)的標準流程進行,各章的主要內容如下:</p><p> 第二章主要是對課題的需求調研,不管是專題類的BBS還是綜合類的BBS,都經過詳細的調查與研究,熟悉BBS的業(yè)務流程以及網站運營的管理。通過網上的調研結果得到系統(tǒng)的可行性分析以及需求分析,并根據當前綜合類的BBS確定出系統(tǒng)的設計方案,最后結合設計方案對系統(tǒng)的經濟、技術和社會三個方面進行可行性分析,確定系統(tǒng)是否可以開發(fā)
45、、是否值得開發(fā)。本章的核心是系統(tǒng)的可行性分析和需求分析,最后結合這兩點以數據流圖的方式進行詳細的說明。</p><p> 第三章主要是課題的開發(fā)前期系統(tǒng)模塊的總體設計,將通過第二章的需求分析得到的數據流圖轉換成數據、軟件結構。詳細說明系統(tǒng)中可能存在的功能模塊,繪制出模塊圖,并進行說明。通過E-R模型圖,詳細分析用戶與帖子,版塊與帖子的關系,最后得出系統(tǒng)的全局E-R圖。確定數據庫的設計方法和步驟,結合設計范式,把
46、數據庫的設計從概念設計轉變成邏輯設計。本章的核心是確定系統(tǒng)模塊,結合分析系統(tǒng)得到的E-R圖,完成數據庫的邏輯設計。</p><p> 第四章主要是系統(tǒng)的設計與實現。首先介紹本系統(tǒng)所采用的開發(fā)框架,了解其運行原理和流程。然后介紹系統(tǒng)開發(fā)所采用的架構和設計模式,并對特殊的設計模式進行詳細說明。最后介紹系統(tǒng)實現運行的效果,結合圖片以及文字說明,詳細描述系統(tǒng)的運行狀況。本章的核心是介紹系統(tǒng)所采用的技術,并描述系統(tǒng)運行實
47、現的結果,并以圖表文字的方式展現其過程。</p><p> 第五章主要是系統(tǒng)的測試。在了解和明確系統(tǒng)測試的原則后,搭建測試平臺和測試環(huán)境。測試前期,制定詳細的測試用例,結合黑盒測試和白盒測試方法進行測試。最后采用集成測試,整合模塊進行測試,并詳細記錄測試結果。本章的核心是通過不同的測試方法,測試系統(tǒng)是否符合性能和功能要求。</p><p> 最后一章主要是針對課題的總結。介紹本次設計的
48、優(yōu)缺點,并對開發(fā)過程進行總結。自我的心得體會,總結開發(fā)的收獲,以及對未來的展望。</p><p><b> 第二章 系統(tǒng)分析</b></p><p> 可行性分析的目的是用最小的成本在盡可能短的時間內確定該系統(tǒng)是否可能開發(fā)、是否可以開發(fā)、是否值得開發(fā)。其實質是在較高層次上以較抽象方式進行的、簡化的、壓縮的需求分析和概要設計過程[7]。本次對課題的需求調研,不管是專
49、題類的BBS還是綜合類的BBS,都經過詳細的調查與研究,熟悉BBS的業(yè)務流程以及網站運營的管理。通過網上的調研結果得到系統(tǒng)的可行性分析以及需求分析,并根據當前綜合類的BBS確定出系統(tǒng)的設計方案,結合設計方案對系統(tǒng)的經濟、技術和社會三個方面進行可行性分析,確定系統(tǒng)是否可以開發(fā)、是否值得開發(fā)。</p><p> 2.1 系統(tǒng)開發(fā)初步調查</p><p> 系統(tǒng)可行性研究的基礎是在開發(fā)的前期
50、進行各項調查并明確系統(tǒng)的開發(fā)目標和規(guī)模。BBS論壇在其傳播與發(fā)展中,由一個互聯(lián)網的常規(guī)應用發(fā)展成為一種日趨普遍的社會現象。它的規(guī)模和大小主要依據興辦單位的規(guī)模和實力來定位的,大的論壇有國家級的論壇和一些省市所投資建設的論壇,小一些的則像愛好者自建的論壇等。所以,考慮系統(tǒng)面向的場所和規(guī)模,為系統(tǒng)的開發(fā)做準確的定位是十分必要的。以下是本文所做的系統(tǒng)開發(fā)調查:</p><p><b> 1.論壇規(guī)模。<
51、;/b></p><p> 以學校的論壇來說,它面向的對象大都是學生和教師等范圍,在學校這樣一個不是很大范圍內,規(guī)模沒有必要達到一些較大論壇的規(guī)模,只要能夠滿足學校范圍內的需求就可以了。當然,如果能夠作到盡善盡美更好,但是學校的資金和人力管理能否達到也是要考慮的。所以,面向的對象決定論壇的規(guī)模。本文設計的論壇規(guī)模較小,適合學校等用戶群體使用。</p><p><b>
52、2.管理機制。</b></p><p> BBS論壇的管理成為國內網絡政治思想教育及網絡輿論調控的一個核心問題。一個好的論壇不僅僅看它的功能和規(guī)模是否齊全,還要看它的管理機制是否健全。這不僅僅是人的因素,還有操作手段和途徑,比如一個好的論壇管理系統(tǒng)。本文設計的論壇,以國家法律法規(guī)作為開發(fā)規(guī)范,并且賦予系統(tǒng)管理員審核帖子的權限,因此,本系統(tǒng)在管理機制方面,是健全的。</p><p&
53、gt; 3.論壇信息時效性。</p><p> 論壇需要統(tǒng)一信息的管理,對各類信息情況和論壇信息的數量,種類要及時掌握,這就要求它具有很強的時效性。為了減少過時信息和大量內容重復多余的信息占用有限的空間而又要盡量做到信息種類的齊全,作為論壇的管理人員來說需要及時地對信息進行登錄和注銷的處理。有些信息如新聞,即時消息等更換的頻率較高,有時需要每天更換,而有些大型信息則可能幾年才更換一次。這些信息的發(fā)布和注銷要求
54、管理員及時掌握,時效性非常重要。本文設計的系統(tǒng),無論是管理員還是版主,會隨時監(jiān)控帖子的時效性,保證帖子的更換頻率,使得每位用戶能夠掌握自己所需的信息。</p><p> 2.2 系統(tǒng)可行性研究分析</p><p> 可行性分析是在進行初步調查后所進行的對系統(tǒng)開發(fā)必要性和可能性的研究,所以也稱為可行性研究。信息系統(tǒng)也應從技術可行性、經濟可行性和社會可行性三方面來論證。通過長時間的觀察與實
55、踐,本文認為論壇系統(tǒng)的可行性分析如下:</p><p> 1.經濟可行性分析。</p><p> 按論壇可以分為營利和非營利,無論哪種性質的論壇,都需要前期的經濟投入,主要是支出的費用:其中包括設備購置費、軟件開發(fā)費用、管理和維護費、人員工資和培訓費等。由于各個論壇實行統(tǒng)一操作,系統(tǒng)共享,人員工資,維護費用相對較少,前期的資金投入主要集中于購置設備上。建立論壇管理中心,可將來自各方面的
56、信息集中管理,提高信息管理的計劃性,快速地反饋市場信息。</p><p> 2.技術可行性分析。</p><p> 技術上的可行性分析要考慮的情況主要有技術、資源(廣義而言,技術也是一類特殊而且高價值的資源)、約束與限制等因素[7]。論壇系統(tǒng)的工作主要是為網絡用戶之間提供一條渠道,能相互溝通信息和共享信息。當代社會,計算機技術飛速發(fā)展,軟件和硬件的發(fā)展也是前所未有的,加上網絡的共享性,
57、開放性,互通性等特點,為本論壇系統(tǒng)的實現提供了技術條件。 </p><p> 3.社會可行性分析。</p><p> 社會可行性分析,主要是評估對新系統(tǒng)及其開發(fā)工作與社會的相容程度,確定新系統(tǒng)是否可以開發(fā)。在當代計算機技術飛速發(fā)展的大環(huán)境下,計算機技術和軟件技術的更新是論壇完全有可能也有能力采用這樣先進的管理技術。它對論壇帶來的影響可以看到:</p><p>
58、 (a)對傳統(tǒng)信息交流理念的沖擊,可能引起信息交流管理的變動。</p><p> (b)對論壇工作人員的要求提高,使論壇在一定的可能下進行整合與發(fā)展,迫使工作人員繼續(xù)學習新知識,拓寬論壇在市場環(huán)境下的生存空間。</p><p> 本系統(tǒng)開發(fā)使用的是正版操作系統(tǒng),正版開發(fā)軟件和免費版數據庫,所有的軟件都有合同證明其合法性,開發(fā)的系統(tǒng)也具有相應的合同制約,所以不存在侵權問題。同時也符合其他
59、相關的法律法規(guī)和社會道德規(guī)范。</p><p><b> 2.3 需求分析</b></p><p> 需求分析的目的是調查系統(tǒng)應用領域,對該應用領域中的信息和操作要求進行詳細分析,形成需求分析說明書[7]。本設計通過詳細的市場調研,了解目前中小型論壇運作所需要的常用功能,參照已穩(wěn)定運行且技術成熟的同類型系統(tǒng),以及借鑒其中的優(yōu)良設計方案和設計理念從而完成設計。通過之
60、前的系統(tǒng)可行性分析,本文認為本次研究的系統(tǒng)可以開發(fā),也值得開發(fā)。通過調研,本文認為一個成熟的BBS論壇系統(tǒng),它不僅能夠滿足用戶之間交流的需求,還能滿足用戶之間相互學習的需求。以往的論壇系統(tǒng),由于界面過于花哨,導致用戶無法集中精力,瀏覽自己所喜歡的帖子,并且這會導致一種惡性循環(huán),影響用戶的再次登錄。其次,以往的論壇系統(tǒng),在系統(tǒng)的組織結構上,存在過于繁瑣,甚至組織冗余,這將導致管理員對系統(tǒng)管理的效率。有的論壇,普通用戶在初次使用時,會感覺無
61、從下手,甚至沒有導航欄目,以至于用戶根本無法抓住重點綜上所述,在經過詳細分析后,本人設計的系統(tǒng)不僅界面直觀、簡潔,而且在組織上也達到簡練的目的。本系統(tǒng)的設計不針對特定用戶群體,也不是特定的專業(yè)論壇,所以任何普通用戶都可以使用本論壇。本系統(tǒng)具體包含3個模塊,分別是會員模塊,帖子模塊和論壇管理模塊。</p><p> 1.會員模塊:本模塊包含3個功能,分別是會員注冊、會員登錄和資料修改。本人認為,當用戶瀏覽論壇時,
62、對感興趣的帖子想發(fā)表意見或者想發(fā)表主題時,就必須成為論壇會員,此做法為了保證論壇的安全性。因此,用戶需要先注冊成為會員。會員管理該模塊實現對會員的增加、修改功能,不會實現刪除功能,以免誤刪會員。</p><p> 2.帖子模塊:這個模塊包含3個子功能,分別是發(fā)帖管理、回帖管理和刪帖管理。該模塊主要是針對論壇的帖子管理。當會員發(fā)表新帖時,本文會把當前主題保存在數據庫中的一張表,其他會員回帖時,必須與該主題相關,否
63、則無法存儲在數據庫中另一張內容表中。主要功能是對帖子的增刪改。</p><p> 3.論壇管理:該模塊包含4個功能,分別是公告管理、版塊管理、廣告管理和帖子管理。此模塊的功能主要是管理員、版主所獨有。每個論壇都有自己的廣告投放區(qū)域,這也是論壇盈利的一部分,因此本人設計的論壇也有此功能,管理員有對廣告的增加、刪除功能。論壇都有重要新聞或者主題動態(tài)的展示,在論壇的最上邊,此功能屬于管理員所有,因此管理員有對廣告的增
64、加、刪除功能。版塊管理是管理員、版主所獨有的功能,他們可以開辟新的版塊供用戶使用,因此對于版塊實現的功能是增加、刪除、修改的功能。 </p><p> 2.4 數據流圖與設計</p><p> 數據流圖(Data Flow Diagram),簡稱DFD,是一種幫助用戶理解和分析整個系統(tǒng)數據流程的圖形工具,它拋開了系統(tǒng)信息和具體內容,精確的在邏輯上描述系統(tǒng)的功能、輸入、輸出和數據存儲等,
65、是系統(tǒng)邏輯模型的重要組成部分。數據流圖描繪的是數據從系統(tǒng)輸入到系統(tǒng)輸出的過程所經受的轉換,它是從數據加工和傳遞的角度,來刻畫數據變化的過程的[4]。</p><p> 數據流圖的基本組成部分有4種,分別是數據流、加工、數據存儲和外部實體。以下是各組成部分的詳細描述[4]:</p><p> 1.數據流:是由一組固定成分的數據組成,來表示數據的流向。值得注意的是,數據流圖中描述的是數據流
66、,而不是控制流。除了流向數據存儲或從數據存儲流出的數據不必命名外,每個數據流必須要有一個合適的名字,以反映該數據流的含義。由于數據流是流動的數據,因此必須標明流向。</p><p> 2.加工:描述了輸入數據流到輸出數據之間的變換,也就是輸入數據流經過什么處理后變成了輸出數據。每個加工都有一個名字和編號。編號能反映該加工位于分層的數據流圖的哪個層次和哪張圖中,能夠看出它是由哪個加工分解出來的子加工。</p
67、><p> 3.數據存儲:數據存儲表示暫時存儲的數據。每個數據存儲都有一個名字,可以是文件或文件的一部分、數據庫的元素等。</p><p> 4.外部實體:外部實體是存在于軟件系統(tǒng)之外的人員或組織,它指出數據所需要的發(fā)源地或系統(tǒng)所產生的數據的歸屬地,可以是人、物或其他系統(tǒng)。</p><p> 2.4.1 數據流圖設計</p><p> 在
68、本次設計的BBS論壇系統(tǒng)中,實體用垂直長方形表示,流程的數據處理用橢圓表示,數據流用箭頭表示,詳細描述如圖2.1所示:</p><p> 實體 數據存儲 數據處理 數據流</p><p> 圖2.1 數據流符號說明</p><p> 普通用戶在進入論壇時,可以選擇注冊成為論壇會員,
69、當執(zhí)行注冊動作時,系統(tǒng)會根據用戶輸入的用戶名去數據庫中查找是否存在該用戶名,不存在時,則存儲用戶的相關注冊信息到用戶表中,詳細描述如圖2.2所示:</p><p> 圖2.2 用戶注冊數據流圖</p><p> 當然用戶注冊成為論壇會員后,系統(tǒng)需要強制用戶登錄。用戶必須填寫正確的用戶名、密碼和驗證碼,才能登陸成功,詳細描述如圖2.3所示:</p><p> 圖
70、2.3 用戶登錄數據流圖</p><p> 用戶成功登錄后,有權在論壇上發(fā)表帖子,發(fā)表后的帖子會在本論壇中用戶所關注的版塊中列出,詳細描述如圖2.4所示:</p><p> 圖2.4 用戶發(fā)帖數據流圖</p><p> 當用戶對感興趣的話題回復時,回復的帖子會追加在當前主題下面,并且持續(xù)的追加,并采用分頁形式顯示,避免回復過長,詳情描述如圖2.5所示:<
71、/p><p> 圖2.5 用戶回帖數據流圖</p><p> 2.4.2 論壇業(yè)務流程圖</p><p> 在本論壇系統(tǒng)中,系統(tǒng)中的人員用橢圓表示,條件判定用菱形表示,信息流用箭頭表示,過程處理用矩形表示,具體業(yè)務流程圖的符號說明如圖2.6所示:</p><p> 系統(tǒng)中人員 條件判定 信息
72、流 處理</p><p> 圖2.6 業(yè)務流程圖符號</p><p> BBS論壇系統(tǒng)業(yè)務流程圖如圖2.7所示:</p><p> 圖2.7 業(yè)務流程圖</p><p> 2.5 開發(fā)平臺與開發(fā)工具</p><p> 在應用開發(fā)領域中,目前系統(tǒng)平臺的體系結構主要有兩種,即C/S(Cl
73、ient/Server)結構和B/S(Brower/Server)結構。 C/S結構,即大家熟知的客戶機和服務器結構。此模式的服務器端通常是使用較高性能的PC機、工作站或者小型機,并采用大型數據庫來進行數據持久。客戶端通常需要安裝專用的客戶端軟件以運行系統(tǒng)。B/S結構,即瀏覽器和服務器結構。該模式是互聯(lián)網興起后的一種新模式。使用此模式客戶將不需要安裝專用的客戶端,直接使用瀏覽器訪問系統(tǒng)的域名即可使用系統(tǒng)同數據庫進行數據交互。在這種結構下
74、,用戶界面完全通過瀏覽器訪問WWW實現,一部分事務邏輯在前端實現,但是主要事務邏輯在服務器端實現,用通用瀏覽器就實現了原來需要復雜專用軟件才能實現的強大功能,并節(jié)約了開發(fā)成本,是一種全新的軟件系統(tǒng)構造技術。因此本系統(tǒng)采用了B/S結構。</p><p> 本系統(tǒng)采用Java技術搭載MySQL開發(fā),所以系統(tǒng)運行將需要安裝有Java Runtime Environment(Java運行環(huán)境)。它是一種是簡單、面向對象
75、、分布式、解釋的、健壯的、安全的、結構中立的、可移植的、性能很優(yōu)異的、多線程的、動態(tài)的編程語言。用Java編寫的程序可讀性好,生成的代碼質量高。MySQL 具有安全性高、可靠性、可擴展必好,對于海量、高效、智能化方面的問題有很好處理能力。</p><p><b> 第三章 總體設計</b></p><p> 總體設計,又稱系統(tǒng)概要設計。概要設計的目的是把通過需求分
76、析所得到的DFD轉換成為軟件結構和數據結構[4]。設計軟件結構的具體任務是:將一個復雜系統(tǒng)按功能進行模塊劃分、建立模塊的層次結構及調用關系、確定模塊間的接口及人機界面等。數據結構設計包括數據特征的描述、確定數據的結構特性、以及數據庫的設計。顯然,概要設計建立的是目標系統(tǒng)的邏輯模型,與計算機無關。</p><p><b> 3.1 功能模塊</b></p><p>
77、 本BBS論壇系統(tǒng)從大的方面來說,主要分為三個模塊:會員模塊、帖子模塊和論壇管理。會員模塊主要是會員進行管理,如會員注冊、會員資料修改等。帖子模塊主要是對帖子的管理,如發(fā)帖、回帖、刪帖等。論壇管理主要是管理員對版塊、公告廣告及帖子審查的管理。當用戶瀏覽論壇時,對感興趣的帖子想發(fā)表意見或者想發(fā)表主題時,就必須為論壇會員,此做法為了保證論壇的安全性。當會員發(fā)表新帖時,本文會把當前主題保存在數據庫中的一張表,其他會員回帖時,必須與該主題相關,
78、否則無法存儲在數據庫中另一張內容表中。此模塊的功能主要是管理員、版主所獨有的。論壇的部分盈利來自于廣告,公告用于展示重大新聞或者特殊主題。如圖3.1所示:</p><p> 圖3.1 論壇系統(tǒng)功能模塊圖</p><p> 3.2 數據庫概念設計</p><p> 概念設計是將通過需求分析得到的用戶需求,抽象為信息結構的過程,是數據庫設計的關鍵之一。其結果是數據
79、庫的概念模式(概念模型)。概念模型不依賴于數據庫邏輯結構和支持數據庫的DBMS。在需求分析和邏輯設計之間插入概念設計,使設計者僅從用戶角度看待數據及處理要求和約束,將注意力從復雜、繁瑣的實現細節(jié)中解脫出來,集中在最重要的信息組織結構和處理模式設計上。因此概念結構設計是整個數據庫設計的重要步驟所在[4]。</p><p> 3.2.1 設計方法</p><p> 概念數據庫設計的方法主要
80、有兩種:一種是集中式設計方法,另一種是視圖綜合設計方法[4]。</p><p> 1.集中式設計方法。集中式設計方法首先合并在需求分析階段得到的各種應用的需求;其次在此基礎上設計一個概念數據庫模式,滿足所有應用的要求。</p><p> 2.視圖綜合設計方法。視圖綜合設計方法由一個視圖設計階段和一個視圖合并階段組成,不要求應用需求的合并。</p><p> 本
81、文所涉及到的數據庫設計,采用集中式設計方法。明確了解需求分析階段得到的各種應用的需求并將相關需求合并。會員模塊,主要的業(yè)務分為會員注冊、會員登錄和會員資料修改。這個模塊的需求是為了記錄在網站注冊的會員的個人身份信息,比如用戶名和密碼。其中,用戶群體分為普通用戶和管理員,他們的權限是不同的。這些需求說明,數據庫的設計必須包含會員的個人身份字段,比如說會員的編號、會員的用戶名、會員的密碼等。帖子模塊,主要的業(yè)務分為會員的發(fā)帖、會員的回帖和管
82、理員的刪帖。這個模塊的需求是帖子的使用,確切的說,是用戶對帖子的操作。其中,用戶分為管理員和普通用戶。普通用戶權限較低,只能在特定的版塊內發(fā)帖和回復特定的帖子。而管理員權限較高,擁有對帖子的刪除操作,也就是說,管理員可以審核帖子是否符合國家法律。帖子的發(fā)表必須在特定的版塊內,不能隨便發(fā)表,并且回復的帖子也需要針對當前帖子進行回復。這些需求表明,數據庫的設計需要將帖子的內容與用戶身份、版塊和回帖進行關聯(lián),因此帖子表、版塊表和回帖表都需要加
83、上相關的外鍵。論壇管理模塊,主要業(yè)務是公告管理、廣告管理、版塊管理和帖子管理。這個模塊的主要用戶群體是管理員,因為這是</p><p> 3.2.2 設計步驟</p><p> 概念結構的設計策略主要有自頂向下、自底向上、自內向外和混合策略四種。這些方法中最常用的是自底向上方法,下面就介紹基于自底向上方法的概念設計的步驟[4]。</p><p> 1.設計局部
84、概念模式。先從局部用戶需求出發(fā),為每個用戶建立一個相應的局部概念結構。在此過程需要對需求分析的結果進行細化、補充和修改,例如數據項的拆分,數據定義的修改等。</p><p> 2.綜合局部概念模式成全局概念模式。這一步驟主要是綜合各局部概念結構,得到反映所有用戶需求的全局概念結構。在這一過程中,主要處理各局部模式對各種對象定義的不一致等各種沖突問題,同時還要注意解決各局部結構合并時可能產生的冗余問題等,必要時還
85、需要對信息需求再調整、分析與重定義。</p><p> 3.評審。最后一步是把全局結構提交評審。評審分為用戶評審與開發(fā)人員評審兩部分。用戶評審的重點是確認全局概念模式是否準確完整地反映了用戶的信息需求,是否符合現實世界事物屬性間的固有聯(lián)系;開發(fā)人員評審則側重于確認全局結構是否完整,各種成分劃分是否合理,是否存在不一致性,以及各種文檔是否齊全等。</p><p> 本文所使用的數據庫概念
86、結構設計策略就是上文所提到的自底向上方法。首先,定義各局部應用的概念結構,然后將它們集成,得到全局概念結構。局部應用的概念結構需要從局部用戶需求出發(fā),以每一個用戶為基礎,建立局部概念結構。用戶與帖子是存在關系的。作為概念結構的個體,每一個用戶其自身也有很多屬性,比如用戶的姓名和密碼。每一個帖子也有其自身的屬性,比如帖子的發(fā)表時間和所屬版塊。用戶與帖子的關系表現在用戶發(fā)表和回復帖子。他們之間的關系式多對多的。一個用戶可以發(fā)表或回復多個帖子
87、,而一個帖子可以被多個用戶發(fā)表或回復。帖子與版塊之間也存在關系,是一種所屬關系。帖子必須屬于某一個版塊,不可能存在獨立于版塊的帖子。版塊其自身是很多屬性,比如版塊的添加時間和版塊的描述。版塊與帖子的關系表現在某一個版塊擁有某一些帖子。版塊與帖子之間的關系是一對多的。一個版塊可以擁有多個帖子。用戶與廣告、公告之間存在關系。廣告與公告基本相同,在此作為同一類對待。廣告與公告其自身有很多屬性,比如添加時間和添加者。當前所指用戶主要是管理員。用
88、戶與廣告、公告之間的關系表現在一個用戶可以添加多個廣告、公告。它們之間的關系是一對多的,因為只存在</p><p> 3.2.3 設計范式</p><p> 設計范式是符合某一種級別的關系模式的集合。在關系數據庫中,這種規(guī)則就是范式。數據庫的設計范式是數據庫設計所需要遵循的規(guī)范,只有滿足這些規(guī)范的數據庫,其結構才是是簡潔的、明晰的。同時,不會發(fā)生插入(insert)、刪除(delete
89、)和更新(update)的操作異常。反之,則是數據操作混亂,不僅給系統(tǒng)的編程人員制造麻煩,而且可能會存儲了大量不需要的冗余信息。</p><p> 目前關系數據庫有六種范式:第一范式、第二范式、第三范式、巴德斯科范式、第四范式和第五范式。一般使用的是前三種范式,以下便是數據庫前三種三范式的介紹:</p><p> 1.第一范式[4]。</p><p> 所謂第
90、一范式(first normal form,簡稱為1NF)指的是數據庫中每張表的每一個字段都是不可分割的基本數據項,同一字段中也不能有多個值,即實體中的某個屬性不能存在多個值或者重復的屬性。如果出現重復的屬性,就可能需要定義一個新的實體,并將重復的屬性單獨分割出去,新的實體由這些重復的屬性構成,因此新實體與原實體之間的關系為一對多關系。在第一范式中表的每一條記錄只包含一個實例的信息。在任何一個關系數據庫中,設計的基本要求就是要符合第一范
91、式,不滿足第一范式的數據庫就不是關系數據庫。</p><p> 2.第二范式[4]。</p><p> 第二范式(簡稱為2NF)是建立在第一范式(1NF)的基礎之上,即滿足第二范式就必須先滿足第一范式。第二范式要求數據庫表中的每個實例或記錄必須可以被惟一地區(qū)分。通俗地講,就是為實現區(qū)分記錄,需要為表加上一個字段,該字段是惟一的,不能有重復的。第二范式要求實體的屬性必須完全依賴于主關鍵字
92、。</p><p> 3.第三范式[4]。</p><p> 滿足第三范式(簡稱為3NF)必須先滿足第二范式(2NF)。第三范式要求一個數據庫每一張表中不包含已在其它表中已包含的非主關鍵字信息。通俗地講,就是一張表中已經包含另外一張表的主鍵字段之后,就不應該包含另外那張被包含主鍵字段表的其它字段,否則會造成數據的冗余。簡而言之,第三范式就是屬性不依賴于其它非主屬性。</p>
93、<p> 本文所采用的數據庫設計范式是第一范式、第二范式和第三范式。一般說來,數據庫只需滿足第三范式就行了。本文之所以采用數據庫的設計范式,是因為范式已經成為一種行業(yè)的設計標準,采用范式設計,不僅能夠使數據庫的結構能夠簡潔清晰,而且不會導致數據操作的混亂或丟失,其重要性顯而易見。本次設計的6張表,全部采用3范式。每一張表都有自己的獨立主鍵,比如用戶表中用戶編號就是主鍵。因為本文設計的系統(tǒng)較小,所以每張表都不出現重復的數據
94、項,因為重復的數據項會被分割出去,成為新表。除了用戶表,其余5張表都存在外鍵。發(fā)帖表中的外鍵是用戶編號和版塊編號,因為每個發(fā)表的帖子都有發(fā)表用戶和所屬版塊?;靥淼耐怄I是用戶編號和發(fā)帖編號,因為每個回帖都有發(fā)表用戶和對應的發(fā)表的主帖。版塊表中的外鍵只有用戶編號,這需要記錄哪個用戶所添加的版塊。廣告和公告表中的外鍵也是只有用戶編號,因為它們獨立于版塊,也不需要版塊編號,只需要記錄哪個用戶添加的即可。</p><p>
95、; 3.3 E-R模型圖</p><p> 數據庫概念結構設計的核心內容是概念模型的表示方法。概念模型的表示方法很多,其中最為著名最為常用的是E-R圖。實體-聯(lián)系模型(簡稱E-R模型)是由P.P.Chen于1976年首先提出的。它提供不受任何DBMS約束的面向用戶的表達方法,在數據庫設計中被廣泛用作數據建模的工具,提供了表示實體類型、屬性和聯(lián)系的方法,用來描述現實世界的概念模型。</p><
96、;p> E-R模型的基本元素包括實體、聯(lián)系和屬性。實體是數據描述的現實世界中的對象或概念,在E-R圖中用矩形表示,矩形框內寫明實體名。屬性是實體所擁有的某一特性,一個實體可由若干個屬性來組成,在E-R圖中用橢圓表示,橢圓框內寫明屬性名。聯(lián)系也稱關系,信息世界中反映實體內部或實體之間的聯(lián)系。實體內部的聯(lián)系通常是指組成實體的各屬性之間的聯(lián)系;實體之間的聯(lián)系通常是指不同實體集之間的聯(lián)系。在E-R圖中用菱形表示,菱形框內寫明聯(lián)系名,并用
97、無向邊分別與有關實體連接起來,同時在無向邊旁標上聯(lián)系的類型(1:1,1:n或m:n)。具體如圖3.2所示:</p><p> 實體 屬性 聯(lián)系</p><p> 圖3.2 E-R模型基本元素符號</p><p> 實體與實體之間的聯(lián)系主要可分為三類[4]:</p&
98、gt;<p> 1.一對一聯(lián)系:實體集A中的每一個實體,實體集B中至多有一個實體于之聯(lián)系,反之亦然,則A與B之間的聯(lián)系為1:1。</p><p> 2.一對多聯(lián)系:實體集A中的每一個實體,實體集B中有n(n≥0)個實體與之聯(lián)系;實體集B中的每一個實體,實體集A中至多有一個實體與之聯(lián)系,則A與B之間的聯(lián)系為1:n。</p><p> 3.多對多聯(lián)系:實體集A中的每一個實體
99、,實體集B中有個n(n≥0)實體與之聯(lián)系;實體集B中的每一個實體,實體集A中有m(m≥0)個實體與之聯(lián)系,則A與B之間的聯(lián)系為m:n。</p><p> 通過需求分析階段,得到數據流圖,并采用如前所述概念設計方法與步驟,經過詳細設計后得到系統(tǒng)數據庫E-R模型。由于本文涉及到的實體過多,所以,本小節(jié)主要從用戶與帖子、帖子與版塊、全局三個具有代表性的方面進行分析。</p><p> 3.3
100、.1 用戶與帖子實體分析</p><p> 用戶實體擁有編號、姓名、性別等屬性。帖子實體擁有編號、主題、內容等屬性。用戶與帖子的關系主要是發(fā)表和回復。用戶與帖子之間的關系是多對多的。一個用戶可以發(fā)表或回復多個帖子,一個帖子可以被多個用戶發(fā)表或回復。用戶與帖子實體之間的關系如圖3.3所示:</p><p> 圖3.3 用戶與帖子E-R圖</p><p> 3.3
101、.2 帖子與版塊實體分析</p><p> 版塊實體擁有編號、名稱、描述等屬性。用戶發(fā)表的帖子,將會在用戶當前所在的版塊中顯示出來,不同的版塊內容帖子不同。版塊與帖子之間的關系是一對多的。一個版塊可以有多個帖子,但是一個帖子只能從屬于一個版塊。帖子與版塊實體之間的關系如圖3.4所示:</p><p> 圖3.4 帖子與版塊E-R圖</p><p> 3.3.3
102、 全局E-R分析</p><p> 論壇系統(tǒng)的實體主要有用戶、管理員、帖子和版塊等會員和個人信息之間的關系是一對一的。每個會員只能修改自己的信息??傮w來看,用戶與帖子的關系是一對多,帖子與版塊的關系是多對一。同時,管理員與帖子的關系是一對多,與版塊的關系也是一對多。一個管理員可以審核多個帖子,也可以操作多個版塊。全局E-R分析描述如圖3.5所示:</p><p> 圖3.5 論壇系統(tǒng)全
103、局E-R圖</p><p> 3.4數據庫邏輯設計</p><p> 邏輯結構設計是將抽象的概念結構轉換為所選用的DBMS支持的數據類型,并對其進行優(yōu)化。數據庫邏輯設計決定了數據庫及其應用的整體性能。如果數據庫邏輯設計不合理,則提高數據庫性能的所有調優(yōu)方案將具有局限性[9]。</p><p> 數據庫邏輯設計時必須遵守規(guī)范化理論,才能使數據庫設計的方法相對完備
104、。規(guī)范化的理論不僅為數據庫邏輯設計提供了理論指導,同時也減少了數據冗余,節(jié)約了存儲空間,從而提高了數據庫性能。</p><p> 通過對系統(tǒng)的功能模塊與數據庫概念設計分析,將E-R圖描述的概念模型轉換成關系模型,因此本次設計的論壇系統(tǒng)數據庫表主要有6張,分別是用戶表,發(fā)帖表,回帖表,版塊表,公告表和廣告表。</p><p> 數據庫邏輯結構的設計的步驟有3步:第1步,將概念結構轉化成為
105、一般的關系、網狀或層次模型;第2步,將轉換來的關系、網狀、層次模型向特定 DBMS 支持下的數據模型轉換;第3步,對轉化后的數據模型進行詳細的優(yōu)化。</p><p> 用戶表,用于記錄論壇系統(tǒng)中的用戶,包括管理員,版主和注冊會員。其字段包含用戶編號,姓名,密碼,性別,郵箱,QQ,電話和狀態(tài),這些字段都是非空的。值得注意的是,用戶的編號是主鍵,系統(tǒng)自增,不需要特別指定。用戶的狀態(tài)用來描述用戶的身份。具體描述見表3
106、.1用戶表:</p><p> 表3.1 T_USER用戶表</p><p> 發(fā)帖表,用于記錄會員所發(fā)帖子的相關信息,包括帖子主題,帖子內容和帖子所屬版塊。其字段包含主題編號,版塊編號,用戶編號,主題名稱,主題內容,發(fā)表日期和主體狀態(tài),這些字段都是非空的。其中主題編號是主鍵,系統(tǒng)自增,不需要特別指定。版塊編號是版塊表的主鍵,用戶編號是用戶表的主鍵,這兩個字段在此是外鍵。具體描述見表3
107、.2發(fā)帖表:</p><p> 表3.2 T_TOPIC發(fā)帖表</p><p> 回帖表,用于記錄會員對某一帖子回復的相關信息,包含回帖的用戶,回帖的信息和回帖的內容。其字段包含回帖編號,用戶編號,主題編號,回帖內容,回帖日期和回帖狀態(tài),這些字段都是非空的。其中回帖編號是主鍵,系統(tǒng)自增,不需要特別指定。用戶編號是用戶表的主鍵,主題編號是主題表的主鍵,這兩個字段在此是外鍵。具體描述見表3
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 課程設計struts2電影交流bbs論壇
- struts2電影交流bbs論壇畢業(yè)論文
- bbs論壇系統(tǒng)畢業(yè)設計2
- 畢業(yè)設計論文_基于JavaEE技術的BBS論壇系統(tǒng)的設計與實現.doc
- 基于struts2技術的跑步社區(qū)后臺系統(tǒng)的設計與實現
- bbs論壇系統(tǒng)畢業(yè)設計
- 畢業(yè)設計開題報告_基于JavaEE技術的BBS論壇系統(tǒng)的設計與實現.docx
- 畢業(yè)設計--討論區(qū)bbs論壇系統(tǒng)的設計與實現
- 畢業(yè)設計---bbs論壇系統(tǒng)的設計與開發(fā)
- 基于javaee技術的bbs論壇系統(tǒng)的設計與實現
- 畢業(yè)設計(論文)-基于java技術的論壇(bbs)
- 畢業(yè)設計---網絡bbs論壇系統(tǒng)
- 基于Struts2技術的人事管理系統(tǒng)的設計與實現.pdf
- 基于struts2技術的電子郵件系統(tǒng)的設計與實現-畢業(yè)論文
- bbs論壇畢業(yè)設計---基于jsp的計算機技術交流論壇系統(tǒng)的設計與實現
- 基于jsp技術的bbs論壇設計與實現
- 基于php+mysql技術bbs論壇畢業(yè)設計
- 基于Struts2的公文管控系統(tǒng)的設計與實現.pdf
- 基于php+mysql技術bbs論壇畢業(yè)設計
- 基于java的論壇bbs的實現(doc畢業(yè)設計論文)
評論
0/150
提交評論