版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 摘 要</b></p><p> 21世紀(jì)的今天是信息高速發(fā)展的時(shí)代,互聯(lián)網(wǎng)的出現(xiàn)更是信息發(fā)展的產(chǎn)物,是信息時(shí)代到來(lái)的標(biāo)志。它的出現(xiàn)給我們的生活以及工作帶來(lái)了前所未有的改變,人與人之間的交流也在發(fā)生著翻天覆地的變化。通過(guò)互聯(lián)網(wǎng)相距千里的人們卻可以像面對(duì)面一樣聊天,交流,這在過(guò)去就如神話一般,而現(xiàn)在它卻真實(shí)的存在我們的生活當(dāng)中,并且我們也越來(lái)越依賴它了。學(xué)
2、生在線交流技術(shù)的產(chǎn)生就是它發(fā)展最好的證明,通過(guò)它你可以足不出戶便實(shí)現(xiàn)與千里之外的同學(xué)聊天。在線學(xué)習(xí)系統(tǒng)主要是以論壇的形式。論壇里面可以學(xué)生之間交流和師生之間交流。學(xué)生之間的交流主要是學(xué)生之間學(xué)習(xí)心得,交流學(xué)習(xí)成果。</p><p> 本文就將通過(guò)以《學(xué)生在線交流平臺(tái)》的設(shè)計(jì)為例說(shuō)細(xì)介紹一下JSP在線交流技術(shù)的實(shí)現(xiàn),領(lǐng)略一上Web技術(shù)給我們帶來(lái)的快捷與方便。本系統(tǒng)采用B/S架構(gòu),使用ASP.NET語(yǔ)言和SQL
3、160;Server 2000數(shù)據(jù)庫(kù)開(kāi)發(fā),運(yùn)行于WINDOWS XP/2003等服務(wù)器。本系統(tǒng)分為前后臺(tái)管理,前臺(tái)頁(yè)面顯示信息,后臺(tái)作為獨(dú)立的管理。前臺(tái)可實(shí)現(xiàn)會(huì)員的注冊(cè)、登錄聊天、修改自己的資料,查找聊天的主題等;后臺(tái)的主要功能是實(shí)現(xiàn)會(huì)員信息的管理、版面的管理、論壇信息管理和論壇系統(tǒng)管理。但是系統(tǒng)還有許多不足之處,部分的功能也有待將來(lái)進(jìn)一步的完善。</p><p> 關(guān)鍵字:在線交流
4、0; 管理 JSP</p><p><b> ABSTRACT</b></p><p> 21st century is the rapid development of information era, the emergence of the Internet is the product of the development
5、of information, is a sign of the arrival of the information age. It appears to work in our lives and brought unprecedented change, the exchanges between people are undergoing earth-shaking changes. People thousands of mi
6、les away via the Internet, but can the same as face to face chat, exchange, which in the past as myth in general, and now it has a real presence of our daily </p><p> This will be through a "student on
7、line communication platform," said the thin design, for example introduce JSP online communication technology to achieve a taste of a Web technology has brought us on a quick and easy. The system uses the B / S arch
8、itecture, the language using ASP.NET and SQL Server 2000 database development, and other servers running on WINDOWS XP/2003. The system is divided into front and back office management, front page to display information,
9、 the background as an independe</p><p> Keywords: Online Communication Management JSP</p><p><b> 目 錄</b></p><p><b> 第一章 緒論1</b></p><p>
10、 1.1 項(xiàng)目背景1</p><p> 1.2 國(guó)內(nèi)外發(fā)展?fàn)顩r1</p><p> 1.3 可行性分析1</p><p> 1.4 任務(wù)目標(biāo)2</p><p> 第二章 需求分析3</p><p> 2.1 功能需求3</p><p> 2.2 數(shù)據(jù)描述4</p
11、><p> 2.3 系統(tǒng)環(huán)境6</p><p> 第三章 概要設(shè)計(jì)8</p><p> 3.1 系統(tǒng)總體結(jié)構(gòu)8</p><p> 3.2 系統(tǒng)功能劃分與描述9</p><p> 3.3 數(shù)據(jù)庫(kù)設(shè)計(jì)10</p><p> 第四章 詳細(xì)設(shè)計(jì)20</p><
12、p> 4.1 MVC三層架構(gòu)20</p><p> 4.2 數(shù)據(jù)庫(kù)的設(shè)計(jì)20</p><p> 4.3 后臺(tái)管理組件的設(shè)計(jì)21</p><p> 4.4 前臺(tái)管理組件的設(shè)計(jì)25</p><p> 第五章 系統(tǒng)實(shí)現(xiàn)29</p><p> 5.1 數(shù)據(jù)庫(kù)連接的實(shí)現(xiàn)29</p>
13、<p> 5.2 后臺(tái)管理功能的實(shí)現(xiàn)30</p><p> 5.3 前臺(tái)管理功能的實(shí)現(xiàn)33</p><p> 第六章 測(cè)試分析37</p><p> 6.1 測(cè)試概要37</p><p> 6.2 測(cè)試結(jié)果和分析37</p><p> 6.3 對(duì)軟件功能的結(jié)論38</p>
14、<p><b> 結(jié) 論39</b></p><p><b> 謝 辭40</b></p><p><b> 參考文獻(xiàn)41</b></p><p><b> 第一章 緒 論</b></p><p><b&g
15、t; 1.1 項(xiàng)目背景</b></p><p> 隨著互聯(lián)網(wǎng)在中國(guó)的飛速發(fā)展與普及應(yīng)用,網(wǎng)絡(luò)已經(jīng)成為人們生活的必需組成部分。網(wǎng)絡(luò)技術(shù)的發(fā)展,給人們的生活帶來(lái)極大的方面,尤其是在交流方面。本文所討論的網(wǎng)上論壇就是一種網(wǎng)絡(luò)交流系統(tǒng)。隨著網(wǎng)絡(luò)的不斷發(fā)展,目前,論壇已經(jīng)作為一個(gè)很重要的交流方式,正以驚人的速度成長(zhǎng)著。無(wú)論是企業(yè)網(wǎng)站還是學(xué)校、政府內(nèi)部管理電子化、網(wǎng)絡(luò)化,論壇都在不斷的應(yīng)用。并且成為最重要的交
16、流工具。 </p><p> 本設(shè)計(jì)旨在建立一個(gè)以服務(wù)于學(xué)生在線相互交流的論壇,方便學(xué)生的交流。本論壇的服務(wù)對(duì)象是所有的學(xué)生群體,服務(wù)宗旨是為所有的學(xué)生提供工作和生活上的幫助和便利。</p><p> 1.2 國(guó)內(nèi)外發(fā)展?fàn)顩r </p><p> 隨著Web應(yīng)用的高速發(fā)展,傳統(tǒng)的靜態(tài)HTML已經(jīng)越來(lái)越不適應(yīng)需要,人們更多的時(shí)候需要交互式的基于Web的應(yīng)
17、用模式,并能方便地對(duì)后臺(tái)數(shù)據(jù)實(shí)施動(dòng)態(tài)管理和控制,在這種情況下,動(dòng)態(tài)網(wǎng)絡(luò)技術(shù)應(yīng)運(yùn)而生。</p><p> 雖然目前基于Web應(yīng)用實(shí)現(xiàn)動(dòng)態(tài)交互使用較多的是ASP、PHP等技術(shù),但在使用過(guò)程中仍然存在一些不足。很顯然,目前所需要的是一個(gè)業(yè)界范圍內(nèi)的創(chuàng)建動(dòng)態(tài)內(nèi)容頁(yè)面的解決方案。太陽(yáng)微系統(tǒng)公司(Sun Microsystems Inc.)在Web服務(wù)器、應(yīng)用服務(wù)器、交易系統(tǒng)以及開(kāi)發(fā)工具供應(yīng)商的廣泛支持與合作下,整合并平衡
18、了已經(jīng)存在的對(duì)Java 編程環(huán)境(例如Java Servlets和Java Beans)進(jìn)行支持的技術(shù)和工具后產(chǎn)生了一種新的、開(kāi)發(fā)基于Web應(yīng)用程序的方法——Java Server Pages技術(shù)(JSP)。</p><p> 從JSP 這幾年的發(fā)展來(lái)看,JSP 已經(jīng)獲得了巨大的成功,它通過(guò)和EJB 等J2EE 組件進(jìn)行集成,可以編寫出處理具有大的伸縮性和高負(fù)載的企業(yè)級(jí)應(yīng)用。同時(shí)JSP技術(shù)在多個(gè)方面加速了動(dòng)態(tài)W
19、eb 頁(yè)面的開(kāi)發(fā)。JSP具備了Java技術(shù)的簡(jiǎn)單易用,完全的面向?qū)ο?,具有平臺(tái)無(wú)關(guān)性且安全可靠,主要面向Internet的所有特點(diǎn)。</p><p> 論壇(BBS)是Bulletin Board System的簡(jiǎn)稱,意為電子公告板,是一種在Internet上常見(jiàn)的用語(yǔ)信息服務(wù)的Web系統(tǒng),是瀏覽者相互溝通的平臺(tái)。它起源于20世紀(jì)80年代初。最初,論壇只是用語(yǔ)發(fā)布公告信息、討論問(wèn)題的在線交流平臺(tái),后來(lái),隨著網(wǎng)絡(luò)
20、的普及,論壇的功能越來(lái)越豐富,受到廣大網(wǎng)民的歡迎。因此,商業(yè)網(wǎng)站也對(duì)論壇重視起來(lái),紛紛在自己的網(wǎng)站尚難開(kāi)辟論壇,作為與網(wǎng)民交流的園地。同時(shí),在線技術(shù)支持和在線服務(wù)也在論壇中開(kāi)展起來(lái)。</p><p><b> 1.3 可行性分析</b></p><p> 1.3.1 經(jīng)濟(jì)可行性分析</p><p> 作為學(xué)生交流論壇這樣的服務(wù)性、非營(yíng)利性
21、組織,網(wǎng)站的建立投入主要在于前期的設(shè)計(jì)編寫工作。而在建設(shè)的網(wǎng)站之后,主要是支出的費(fèi)用包括設(shè)備購(gòu)置費(fèi)或者空間租金、軟件開(kāi)發(fā)費(fèi)用、管理和維護(hù)費(fèi)等,而站務(wù)人員基本上是會(huì)員的志愿行為,不需太高工資需求。此外,網(wǎng)站運(yùn)行之后還可以通過(guò)廣告贊助來(lái)獲得相應(yīng)的經(jīng)費(fèi)。</p><p> 1.3.2 技術(shù)可行性分析</p><p> 技術(shù)上的可行性分析主要分析現(xiàn)有技術(shù)條件能否順利完成開(kāi)發(fā)工作,硬件、軟件配置
22、能否滿足開(kāi)發(fā)者的需要,各類技術(shù)人員的數(shù)量,水平,來(lái)源等。本站是以論壇為主體的互動(dòng)式網(wǎng)站,充分發(fā)揮計(jì)算機(jī)網(wǎng)絡(luò)信息傳輸速度快、準(zhǔn)確度高的優(yōu)勢(shì),讓每個(gè)成員都可以參與其中。計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)的飛速發(fā)展和廣泛普及,為系統(tǒng)的建設(shè)提供了技術(shù)條件。</p><p> 1.3.3 社會(huì)可行性分析</p><p> 社會(huì)可行性主要論證新系統(tǒng)在企業(yè)或機(jī)構(gòu)開(kāi)發(fā)和運(yùn)行的可能性以及運(yùn)行后可能一起的對(duì)企業(yè)或機(jī)構(gòu)的影響
23、,即組織內(nèi)外是否具備接受和使用新系統(tǒng)的條件。當(dāng)前網(wǎng)絡(luò)的普及,以及計(jì)算機(jī)應(yīng)用的不斷發(fā)展,建立這樣一個(gè)互動(dòng)式論壇網(wǎng)站,能夠擁有大量的用戶群體。</p><p><b> 1.4 任務(wù)目標(biāo)</b></p><p> 本項(xiàng)目的目標(biāo)為:設(shè)計(jì)并實(shí)現(xiàn)論壇的各模塊功能,使用JSP編程,建立一個(gè)應(yīng)用環(huán)境,在三層體系架構(gòu)下開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用軟件,構(gòu)建一個(gè)以論壇為主體的互動(dòng)式網(wǎng)站,使其具備
24、基本的論壇功能。主要包括:用戶注冊(cè)、登陸、簽寫留言、回復(fù)留言、留言查看和管理員的普通維護(hù)功能等。界面美觀大方,系統(tǒng)運(yùn)行穩(wěn)定。</p><p><b> 第二章 需求分析</b></p><p><b> 2.1 功能需求</b></p><p> “學(xué)生在線交流社區(qū)” 作為一個(gè)以論壇為主體的互動(dòng)式網(wǎng)站,從使用的角度
25、進(jìn)行分析,既要有供用戶看帖、發(fā)(回)帖和進(jìn)行自身資料編輯的功能,又要有供管理員進(jìn)行論壇管理職能的功能。因此,整個(gè)系統(tǒng)的功能將可以劃分為前臺(tái)和后臺(tái)兩部分。</p><p> 2.1.1 前臺(tái)功能劃分與描述</p><p><b> 1.發(fā)表帖子</b></p><p> 論壇最初是為了互相討論話題而誕生的,發(fā)表帖子就是表達(dá)自己的看法,與他人
26、進(jìn)行討論,因此發(fā)帖是論壇首要的功能;</p><p><b> 2.瀏覽帖子</b></p><p> 發(fā)表了帖子就要供他人瀏覽查看,使他人分享自己的想法、經(jīng)驗(yàn);</p><p><b> 3.回復(fù)帖子</b></p><p> 瀏覽了他人發(fā)表的帖子,想要發(fā)表自己的想法,參與討論,就可以回復(fù)
27、這個(gè)帖子。</p><p> 2.1.2 后臺(tái)功能劃分與描述</p><p><b> 1.編輯帖子</b></p><p> 發(fā)帖回帖的用戶,如果需要修改更新自己發(fā)表的帖子內(nèi)容,就要求具有編輯帖子內(nèi)容的擴(kuò)展功能,提供給用戶更新自己發(fā)言的選擇。對(duì)于論壇管理員,可以編輯任何帖子的內(nèi)容;</p><p><b&g
28、t; 2.刪除帖子</b></p><p> 如果用戶發(fā)表了不符合論壇規(guī)則的帖子,則需要管理員刪除掉這些帖子,這就要求具有刪除帖子的擴(kuò)展功能;</p><p><b> 3.轉(zhuǎn)移帖子</b></p><p> 論壇劃分了版塊,如果帖子內(nèi)容不屬于所在版塊的關(guān)注話題,那么管理員可以選擇將此帖移動(dòng)到所屬話題的版塊中去,就要求具有移
29、動(dòng)帖子的擴(kuò)展功能。這個(gè)功能是隨著版塊功能出現(xiàn)而出現(xiàn)的,版塊將帖子分組,從而提出了轉(zhuǎn)移帖子的要求;</p><p><b> 4.置頂帖子</b></p><p> 帖子一般是根據(jù)發(fā)表及回復(fù)時(shí)間倒序排列的,這樣先發(fā)的帖子慢慢就排到后面,管理員如果需要強(qiáng)調(diào)某些帖子的重要性,有必看性,就要打亂默認(rèn)的排列順序,將這些帖子放在列表的最前端,不再按照時(shí)間進(jìn)行排列順序的變化,但
30、是還是要保持其他帖子按照時(shí)間變化順序,這就要求具有置頂帖子的擴(kuò)展功能;</p><p><b> 5.指定精華帖</b></p><p> 如果管理員認(rèn)為某個(gè)帖子的內(nèi)容非常好,可以打上標(biāo)記,推薦給看帖的用戶,這就要求具有指定精華帖的擴(kuò)展功能。用戶可以選擇只看打上標(biāo)記的精華帖;</p><p><b> 6.搜索帖子</b&
31、gt;</p><p> 論壇中的帖子越來(lái)越多,用戶就需要從大量的帖子中找到自己需要的內(nèi)容,這就要求具有搜索帖子的擴(kuò)展功能;</p><p><b> 7.管理版塊</b></p><p> 論壇版塊需要先創(chuàng)建,才能被使用,管理員還可以刪改版塊的相關(guān)信息,因此管理版塊是管理員使用的擴(kuò)展功能;</p><p><
32、;b> 8.設(shè)置參數(shù)</b></p><p> 論壇一般有一些初始化信息,比如論壇名稱,每頁(yè)顯示帖子數(shù)量等參數(shù)信息,管理員可以在后臺(tái)界面自行設(shè)置,也屬于擴(kuò)展功能;</p><p><b> 9.管理用戶</b></p><p> 管理員可以對(duì)論壇的注冊(cè)用戶進(jìn)行管理,直接添加用戶,賦予相關(guān)權(quán)限,也可以修改已注冊(cè)用戶的權(quán)限
33、,對(duì)于違規(guī)用戶可以刪除,這個(gè)擴(kuò)展功能便于管理員對(duì)論壇用戶的管理。</p><p><b> 2.2 數(shù)據(jù)描述</b></p><p> 2.2.1 數(shù)據(jù)流圖</p><p><b> 1.頂層數(shù)據(jù)流圖</b></p><p> 頂層分析系統(tǒng)前臺(tái)的總體情況,判別數(shù)據(jù)的來(lái)源和去處,確定外部實(shí)體,
34、劃分幾個(gè)主要功能,并明確各功能之間的聯(lián)系,繪制出數(shù)據(jù)流圖。如圖2-1所示。</p><p> 圖2-1 前臺(tái)頂層數(shù)據(jù)流圖</p><p> 從上圖可知,系統(tǒng)需要完成的功能有:</p><p> 在myuser用戶表中錄入新用戶注冊(cè)信息;</p><p> 通過(guò)調(diào)用myusers用戶表中的用戶名、密碼與用戶輸入的用戶名、密碼進(jìn)行比對(duì)來(lái)
35、校驗(yàn)用戶信息(用戶名和密碼);</p><p> 從board論壇版面表中調(diào)用版面信息,生成版塊的帖子列表供用戶查看;</p><p> 從bbs1帖子表中調(diào)用帖子信息,生成帖子內(nèi)容供用戶查看;</p><p> 將用戶新增的帖子內(nèi)容錄入bbs1帖子表。</p><p> 2.進(jìn)一步分解的數(shù)據(jù)流圖</p><p&g
36、t; 在頂層數(shù)據(jù)流圖中大致表現(xiàn)了系統(tǒng)功能,但是不能詳細(xì)將所有的功能描述。通過(guò)對(duì)具體的業(yè)務(wù)分析和調(diào)查得知,4號(hào)進(jìn)程(帖子操作)還可以進(jìn)一步分解為查看帖子、回復(fù)帖子和發(fā)表帖子等子項(xiàng)目。據(jù)此,對(duì)頂層數(shù)據(jù)流圖進(jìn)行進(jìn)一步分解,可以得出更加細(xì)化的數(shù)據(jù)流圖。如圖2-2所示。</p><p> 圖2-2 進(jìn)一步分解后的數(shù)據(jù)流圖</p><p> 從上圖可知,4號(hào)進(jìn)程(帖子操作)中,系統(tǒng)需要完成的細(xì)
37、化功能有:</p><p> 從bbs1帖子表調(diào)用帖子信息,生成帖子內(nèi)容供用戶查看;</p><p> 將用戶回復(fù)的帖子內(nèi)容錄入bbs1帖子表;</p><p> 將用戶發(fā)表的帖子內(nèi)容錄入bbs1帖子表。</p><p> 2.2.2 數(shù)據(jù)庫(kù)描述</p><p> 本軟件采用MySQL數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)用戶名為r
38、oot,密碼為root,本論壇數(shù)據(jù)庫(kù)名稱為eforum。</p><p><b> 2.3 系統(tǒng)環(huán)境</b></p><p> 2.3.1 系統(tǒng)運(yùn)行環(huán)境</p><p><b> 1.硬件平臺(tái):</b></p><p><b> 服務(wù)器端:</b></p>
39、<p> CPU:Pentium 4 2.4GHz以上;</p><p> 內(nèi)存:512MB以上;</p><p><b> 硬盤:40GB;</b></p><p> 顯示器:分辨率1024×768,32位色;</p><p> 網(wǎng)卡:100Mbps。</p><p&
40、gt;<b> 客戶端:</b></p><p> CPU:Pentium III 600MHz以上;</p><p> 內(nèi)存:64MB以上;</p><p><b> 硬盤:20GB;</b></p><p> 顯示器:分辨率1024×768,32位色;</p>
41、<p> 網(wǎng)卡:10M/100Mbps自適應(yīng)。</p><p><b> 2.軟件環(huán)境:</b></p><p><b> 服務(wù)器端:</b></p><p> 操作系統(tǒng):Windows Server 2000 Server + Service Pack(4.0或以上版本);</p><
42、;p> 數(shù)據(jù)庫(kù)服務(wù)器:MySQL 5.1.50;</p><p> 支持服務(wù)器段增加網(wǎng)絡(luò)版防病毒軟件或插防病毒卡。</p><p><b> 客戶端:</b></p><p> 操作系統(tǒng):Windows XP或Vista;</p><p> 目標(biāo)應(yīng)用軟件客戶端;</p><p>
43、 瀏覽器:IE 5.0,推薦使用IE 7.0;</p><p> 支持客戶段增加網(wǎng)絡(luò)版防病毒軟件或插防病毒卡。</p><p> 2.3.2 系統(tǒng)開(kāi)發(fā)環(huán)境</p><p><b> 1.硬件平臺(tái):</b></p><p> CPU:Pentium M 1.5GHz;</p><p> 內(nèi)
44、存:512MB以上;</p><p><b> 硬盤:40GB;</b></p><p> 顯示器:分辨率1024×768,32位色;</p><p> 網(wǎng)卡:10M/100Mbps自適應(yīng)。</p><p><b> 2.軟件環(huán)境:</b></p><p>
45、 操作系統(tǒng):Windows XP + Service Pack 2;</p><p> 數(shù)據(jù)庫(kù)服務(wù)器:MySQL 5.1.50;</p><p> J2EE應(yīng)用服務(wù)器:Tomcat 5.5;</p><p> 開(kāi)發(fā)工具:JDK 1.6;</p><p> 瀏覽器:IE 5.0,推薦使用IE 7.0。</p><p
46、><b> 第三章 概要設(shè)計(jì)</b></p><p> 3.1 系統(tǒng)總體結(jié)構(gòu)</p><p> 3.1.1 總體模塊劃分</p><p> 從需求分析中得知,可以將功能分為前臺(tái)和后臺(tái)兩類,因此模塊也分為兩大類:前臺(tái)模塊和后臺(tái)模塊。</p><p> 用戶在前臺(tái)注冊(cè)、登陸,以及修改個(gè)人的注冊(cè)信息組合成注冊(cè)
47、登陸模塊;用戶瀏覽模塊、瀏覽主題帖列表、查看帖子組合成瀏覽模塊;用戶發(fā)帖、回帖、編輯自己發(fā)布的帖子組合成發(fā)帖回帖模塊,管理員編輯帖子、刪除帖子、轉(zhuǎn)移帖子、置頂帖子和指定精華帖組合成管理帖子模塊。以上四個(gè)模塊組合成前臺(tái)功能模塊。</p><p> 后臺(tái)模塊都是與管理員相關(guān)的,設(shè)置論壇參數(shù)單獨(dú)為論壇設(shè)置模塊;創(chuàng)建、修改和刪除版塊為管理版塊模塊;添加、刪除和設(shè)置權(quán)限為管理用戶模塊。</p><p&
48、gt; 至此,系統(tǒng)的模塊劃分完成,并且得到系統(tǒng)的功能框架。系統(tǒng)功能結(jié)構(gòu)如圖3-1所示。</p><p> 圖3-1 系統(tǒng)功能結(jié)構(gòu)圖</p><p> 3.1.2 各模塊之間的關(guān)系</p><p> 對(duì)于本系統(tǒng),聯(lián)系各個(gè)模塊的主線是使用者的權(quán)限。用戶能使用論壇的哪些功能是由用戶的權(quán)限決定的。論壇的每個(gè)功能都與相應(yīng)的權(quán)限對(duì)應(yīng)。例如,注冊(cè)用戶具有瀏覽帖子、發(fā)帖、
49、回帖的權(quán)限,那么他就能夠使用論壇中的瀏覽、發(fā)帖、回帖功能。同一類用戶使用的功能模塊,是以使用者為中心連接起來(lái)的。另外,操作同一類事務(wù)的功能模塊,也是有相互關(guān)系的。</p><p> 因此,瀏覽模塊與發(fā)帖回帖模塊、管理帖子模塊關(guān)聯(lián),是由論壇的系統(tǒng)流程決定的;管理版塊模塊與瀏覽模塊關(guān)聯(lián),是由帖子與版塊的父子關(guān)系決定的,帖子依附于版塊,先有版塊后有帖子,帖子必須發(fā)表在某個(gè)版塊中;管理用戶模塊與注冊(cè)登陸模塊關(guān)聯(lián),是由同
50、一類對(duì)象(用戶)決定的,注冊(cè)以后具有論壇身份,成為用戶,所有的用戶需要接受管理員的管理,用戶登陸證明自己在論壇中的身份。</p><p> 3.2 系統(tǒng)功能劃分與描述</p><p> 根據(jù)系統(tǒng)的功能劃分,系統(tǒng)分為前臺(tái)和后臺(tái)兩部分。兩部分都擁有各自的功能及其業(yè)務(wù)流程。</p><p> 3.2.1 前臺(tái)功能及其業(yè)務(wù)流程</p><p>
51、 系統(tǒng)前臺(tái)的主要功能:</p><p> 流程如下:用戶進(jìn)入系統(tǒng)后,1.如果尚未注冊(cè),則需先行注冊(cè),系統(tǒng)將錄入該新用戶的帳號(hào)信息,2.如果已經(jīng)注冊(cè),則進(jìn)入登陸界面;用戶輸入帳號(hào)信息(用戶名和密碼)以登陸系統(tǒng),系統(tǒng)將對(duì)輸入的帳號(hào)信息同已存儲(chǔ)的帳號(hào)信息進(jìn)行核對(duì),核對(duì)無(wú)誤后登陸成功,方可進(jìn)入論壇瀏覽版塊;此時(shí),用戶可以1.選擇自己感興趣的帖子進(jìn)入查看,并且在查看帖子的同時(shí)還可以對(duì)該帖子進(jìn)行回復(fù),2.通過(guò)發(fā)帖功能發(fā)布
52、新的話題,3.退出系統(tǒng)離開(kāi)論壇等。在這一系列操作過(guò)程中,系統(tǒng)將根據(jù)需要對(duì)版塊信息、帖子信息進(jìn)行調(diào)用、錄入或修改。如圖3-2所示。</p><p> 圖3-2 前臺(tái)(用戶)流程圖圖例</p><p> 3.2.2 后臺(tái)功能及其業(yè)務(wù)流程</p><p> 系統(tǒng)后臺(tái)的主要流程如下:管理員進(jìn)入系統(tǒng)后臺(tái)登陸界面后,需要輸入專門的管理員帳號(hào)信息(用戶名和密碼)以登陸系統(tǒng)
53、,系統(tǒng)將對(duì)輸入的帳號(hào)信息同已存儲(chǔ)的帳號(hào)信息進(jìn)行核對(duì),核對(duì)無(wú)誤后登陸成功,方可進(jìn)入后臺(tái)管理界面;此時(shí),管理員可以對(duì)所需的管理功能進(jìn)行選擇,執(zhí)行1.管理版塊,2.管理注冊(cè)用戶,3.管理友情鏈接,4.管理論壇基本參數(shù)等各種論壇管理職能,或退出后臺(tái)管理系統(tǒng)等。在這一系列操作過(guò)程中,系統(tǒng)將根據(jù)需要對(duì)版塊信息、用戶信息、友情鏈接信息、論壇基本參數(shù)信息等進(jìn)行調(diào)用、錄入或修改。如圖3-3所示。</p><p> 圖3-3 后
54、臺(tái)(管理員)流程圖圖例</p><p><b> 3.3 數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p> 根據(jù)系統(tǒng)功能分析和需求總結(jié),考慮到將來(lái)功能上的擴(kuò)展,設(shè)計(jì)如下數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu):</p><p> 用戶信息,包括數(shù)據(jù)項(xiàng):用戶名、密碼、頭銜、頭像、用戶等級(jí)等;</p><p> 版面信息,包括數(shù)據(jù)項(xiàng):版面所屬類型,版面
55、的分類號(hào)、版主、上級(jí)版面、版面樣式等;</p><p> 帖子信息,包括數(shù)據(jù)項(xiàng):所屬版面、父帖子ID、子帖子ID、用戶、主題、內(nèi)容、發(fā)表時(shí)間等;</p><p> 短消息信息,包括數(shù)據(jù)項(xiàng):發(fā)件人、收件人、主題、內(nèi)容、發(fā)送時(shí)間等;</p><p> 友情鏈接信息,包括數(shù)據(jù)項(xiàng):友情鏈接名稱、友情鏈接說(shuō)明、友情鏈接地址等;</p><p>
56、 論壇公告信息,包括數(shù)據(jù)項(xiàng):所屬版面、標(biāo)題、內(nèi)容、用戶名、時(shí)間等。</p><p> 3.3.1 數(shù)據(jù)庫(kù)概念設(shè)計(jì)</p><p> 得到以上數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)之后,可以規(guī)劃的實(shí)體有:管理員信息實(shí)體、版主信息實(shí)體、用戶信息實(shí)體、帖子實(shí)體、短消息實(shí)體、公告信息實(shí)體、版面信息實(shí)體、友情鏈接信息實(shí)體。實(shí)體之間關(guān)系的E-R圖。如圖3-4所示。</p><p> 管理員信息
57、實(shí)體E-R圖。如圖3-5所示。</p><p> 圖3-4 實(shí)體之間關(guān)系的E-R圖</p><p> 圖3-5 管理員信息實(shí)體E-R圖</p><p> 用戶信息實(shí)體的E-R圖。如圖3-6所示。</p><p> 圖3-6 用戶信息實(shí)體的E-R圖</p><p> 帖子信息實(shí)體的E-R圖。如圖3-7所示
58、。</p><p> 圖3-7 帖子信息實(shí)體的E-R圖</p><p> 短消息信息實(shí)體的E-R圖。如圖3-8所示。</p><p> 圖3-8 短消息信息實(shí)體的E-R圖</p><p> 公告信息實(shí)體的E-R圖。如圖3-9所示。</p><p> 圖3-9 公告信息實(shí)體的E-R圖</p>
59、<p> 版面信息實(shí)體的E-R圖。如圖3-10所示。</p><p> 圖3-10 版面信息實(shí)體的E-R圖</p><p> 友情鏈接信息實(shí)體的E-R圖。如圖3-11所示。</p><p> 圖3-11 友情鏈接信息實(shí)體的E-R圖</p><p> 3.3.2 數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)</p><p>
60、 系統(tǒng)數(shù)據(jù)庫(kù)中各個(gè)表的設(shè)計(jì)結(jié)果如表3-1所示。每個(gè)表格表示在數(shù)據(jù)庫(kù)中的一個(gè)表。</p><p> 表3-1 數(shù)據(jù)庫(kù)表</p><p> 表3-1列出了根據(jù)原則設(shè)計(jì)出的系統(tǒng)所要用到的數(shù)據(jù)表。系統(tǒng)數(shù)據(jù)庫(kù)中各個(gè)表的設(shè)計(jì)結(jié)果如表3-2到表3-12所示。每個(gè)表格表示在數(shù)據(jù)庫(kù)中的一個(gè)表。</p><p> 設(shè)計(jì)數(shù)據(jù)表間的關(guān)系為多層附屬對(duì)應(yīng),主要考慮到論壇中各個(gè)對(duì)象的相
61、互關(guān)系,帖子屬于版塊,回復(fù)帖從屬于主題帖,帖子的作者屬于用戶,因此版塊、主題帖、回復(fù)帖是一層層的從屬依賴關(guān)系,帖子的作者必須是論壇的用戶,帖子不能脫離版塊、用戶而單獨(dú)存在。</p><p> 如表3-2所示為論壇版面的分類表,記錄論壇版面分類的信息。</p><p> 表3-2 class論壇版面的分類表</p><p> 如表3-3所示為論壇版面表,記錄所
62、有論壇版面信息。</p><p> 表3-3 board論壇版面表</p><p> 如表3-4所示為友情鏈接表,記錄本站于友情鏈接相關(guān)的信息。</p><p> 表3-4 bbslink友情鏈接表</p><p> 如表3-5所示為后臺(tái)對(duì)論壇進(jìn)行配置的表,對(duì)論壇的某些信息進(jìn)行系統(tǒng)的配置。</p><p>
63、 表3-5 config后臺(tái)論壇配置用表</p><p> 如表3-6所示為日志表,記錄本論壇的用戶訪問(wèn)信息。</p><p> 表3-6 log日志表</p><p> 如表3-7所示為ef_users用戶表,用戶基本信息表包含了用戶基本且必要的信息。</p><p> 表3-7 ef_users用戶表</p>
64、<p> 如表3-8所示為friend好友表,是與用戶基本信息表相關(guān)聯(lián)的。</p><p> 表3-8 friend好友表</p><p> 如表3-9所示為bbs1帖子表,是論壇中與用戶交往最多的信息表。</p><p> 表3-9 bbs1帖子表</p><p> 如表3-10所示為bbsnews論壇公告表,是論
65、壇中版主和管理員管理公告信息時(shí)所需要操作的表。</p><p> 表3-10 bbsnews論壇公告表</p><p> 如表3-11所示為message郵箱表,是用戶管理短信息和管理員給用戶發(fā)送系統(tǒng)消息用的表,每一條記錄代表一封郵件。</p><p> 表3-11 message郵箱表</p><p><b> 第四章
66、 詳細(xì)設(shè)計(jì)</b></p><p> 4.1 MVC三層架構(gòu)</p><p> MVC是Model-View-Controller的簡(jiǎn)寫,代表的是應(yīng)用的業(yè)務(wù)邏輯(通過(guò)JavaBean,EJB組件實(shí)現(xiàn)),“View”是應(yīng)用的表示面(由JSP頁(yè)面產(chǎn)生),“Controller”提供應(yīng)用的處理過(guò)程控制(一般是一個(gè)Servlet),通過(guò)這種設(shè)計(jì)模型把應(yīng)用邏輯、處理過(guò)程和顯示邏輯分
67、成不同的組件實(shí)現(xiàn)。這些組成件可以進(jìn)行交互和重用。</p><p> 4.2 數(shù)據(jù)庫(kù)的設(shè)計(jì)</p><p> 4.2.1 數(shù)據(jù)庫(kù)的生成</p><p> 首先安裝MySQL數(shù)據(jù)庫(kù),創(chuàng)建數(shù)據(jù)庫(kù)名稱為eforum,在此創(chuàng)建用戶為root,密碼root,然后創(chuàng)建數(shù)據(jù)表,生成數(shù)據(jù)庫(kù)。</p><p> 4.2.2 數(shù)據(jù)庫(kù)的連接和配置</p
68、><p> 本系統(tǒng)是通過(guò)JDBC來(lái)連接MySQL數(shù)據(jù)庫(kù)。加載數(shù)據(jù)庫(kù)驅(qū)動(dòng)。根據(jù)讀取的數(shù)據(jù)庫(kù)驅(qū)動(dòng)配置字符串drivers,動(dòng)態(tài)加載數(shù)據(jù)庫(kù)驅(qū)動(dòng)的程序。首先通過(guò)Class.forName()來(lái)動(dòng)態(tài)加載,再使用DriverManager數(shù)據(jù)庫(kù)驅(qū)動(dòng)管理器來(lái)注冊(cè)該驅(qū)動(dòng)類。相關(guān)代碼如下:</p><p> import java.sql.Connection;</p><p>
69、import java.sql.DriverManager;</p><p> public class Conn {</p><p><b> // 非鏈接池</b></p><p> public static Connection getConn() {</p><p><b> // 建立連接對(duì)
70、象</b></p><p> Connection conn = null;</p><p> // 說(shuō)明JDBC驅(qū)動(dòng)類所在位置的字符串,與驅(qū)動(dòng)所在目錄對(duì)應(yīng)。</p><p> String driver = "com.mysql.jdbc.Driver";</p><p> // MySQL的JDBC
71、 URL 字符串</p><p> // 連接到本地主機(jī),端口為3306,數(shù)據(jù)庫(kù)為mysql,</p><p> String sourse = "jdbc:mysql://127.0.0.1:3306/eforum?characterEncoding=utf-8";</p><p><b> try {</b><
72、;/p><p> // 初始化MySQL的JDBC橋驅(qū)動(dòng)類</p><p> Class.forName(driver);</p><p> // 使用DriverManager類的getConnection方法建立連接。url=sourse,用戶名為root,密碼為root。</p><p> conn = DriverManager.
73、getConnection(sourse, "root", "root");</p><p> } catch (Exception e) {</p><p> System.out.println(e.toString());</p><p><b> }</b></p><p
74、><b> // 返回連接對(duì)象</b></p><p> return conn;</p><p><b> }</b></p><p> public static void main(String[] args) {</p><p> System.out.println(Con
75、n.getConn());</p><p><b> }</b></p><p><b> }</b></p><p> 4.3 后臺(tái)管理組件的設(shè)計(jì)</p><p> 一般論壇的后臺(tái)管理功能主要包括:論壇版面的增加、修改、刪除的管理;友情鏈接的增加、修改、刪除的管理;論壇消息的管理;論壇通告
76、的管理。針對(duì)這些功能,設(shè)計(jì)各個(gè)相關(guān)組件。</p><p> 4.3.1 論壇管理組件</p><p> 圖4-1 論壇管理界面</p><p> ForumAdmin.java類的功能用于管理員對(duì)系統(tǒng)后臺(tái)的維護(hù),包括了對(duì)版面及論壇類別的增、刪、改功能,添加一個(gè)新版面時(shí)調(diào)用函數(shù)saveNew,修改版面時(shí)調(diào)用函數(shù)saveMod,刪除一個(gè)版面時(shí)調(diào)用函數(shù)del。還有
77、對(duì)論壇類別的增、刪、改功能,用法與版面相似。主要功能函數(shù)如下:</p><p> public static void saveNew(HttpServletRequest request)。該函數(shù)的功能是添加一個(gè)新版面。此函數(shù)調(diào)用時(shí)會(huì)對(duì)“版面名稱”、“版面分類”、“論壇開(kāi)放狀態(tài)”等判斷非空和唯一性,如果為空時(shí)拋出異常,并給出用戶提示。新增成功則會(huì)在論壇表里增加一條記錄;</p><p>
78、; public void saveMod(HttpServletRequest request)。該函數(shù)的功能是修改一個(gè)新版面。此函數(shù)調(diào)用前要先選定想要修改的版面ID,如果沒(méi)有選定,程序?qū)伋霎惓?,并給出用戶提示。然后會(huì)對(duì)“版面名稱”、“版面分類”等判斷非空和唯一性,如果為空時(shí)拋出異常,并給出用戶提示。如果修改成功,則在論壇表里對(duì)應(yīng)的那條記錄信息就更新了;</p><p> public static vo
79、id saveEdit(HttpServletRequest request)。該函數(shù)的功能是編輯一個(gè)版面。此函數(shù)調(diào)用前要先選擇編輯版面的ID,如果沒(méi)有選定,程序?qū)伋霎惓?,并給出用戶提示。然后會(huì)要求填寫新版面的ID,如果為空或不唯一時(shí)拋出異常,并給出用戶提示。最后對(duì)“版面名稱”、“版面分類”、“版面說(shuō)明”、“版面開(kāi)放狀態(tài)”等判斷非空,如故為空時(shí)拋出異常,并給出用戶提示。如果編輯成功,則在論壇表里對(duì)應(yīng)的那條記錄就更新了;</p&g
80、t;<p> public static void del(HttpServletRequest request)。該函數(shù)的功能是刪除一個(gè)版面。此函數(shù)調(diào)用前先選擇要?jiǎng)h除的版面ID,如果沒(méi)有選定,程序?qū)伋霎惓?,并給出用戶提示,然后執(zhí)行刪除操作。如果刪除成功,則在論壇表里對(duì)應(yīng)的那條記錄信息就不存在了;</p><p> public static void dell(HttpServletRequ
81、est request)。該函數(shù)的功能是刪除一個(gè)論壇分類。此函數(shù)調(diào)用前先選擇要?jiǎng)h除的論壇分類ID,如果沒(méi)有選定,程序?qū)伋霎惓#⒔o出用戶提示,然后執(zhí)行刪除操作。如果刪除成功,則在論壇分類表里對(duì)應(yīng)的那條記錄信息就不存在了;</p><p> public static void updateOrders(HttpServletRequest request)。該函數(shù)的功能是修改一個(gè)新的論壇類別。此函數(shù)調(diào)用前要先
82、選定想要修改的論壇類別,如果沒(méi)有選定,程序?qū)伋霎惓?,并給出用戶提示。然后會(huì)對(duì)新獲取的分類序號(hào)判斷唯一性,如果有沖突時(shí)拋出異常,并給出用戶提示。如果修改成功,則在論壇分類表里對(duì)應(yīng)的那條記錄信息就更新了;</p><p> public static void saveClass(HttpServletRequest request)。該函數(shù)的功能是添加一個(gè)新版面。此函數(shù)調(diào)用時(shí)會(huì)對(duì)“論壇分類名稱”等判斷是否為空,
83、如果為空時(shí)拋出異常,并給出用戶提示。新增成功則會(huì)在論壇分類表里增加一條記錄。</p><p> 4.3.2 友情鏈接管理組件</p><p> 圖4-2 友情鏈接管理界面</p><p> ForumLinkAdmin.java類的功能用于管理員對(duì)系統(tǒng)后臺(tái)的維護(hù),包括了對(duì)友情鏈接的增、刪、改功能。添加一個(gè)新友情鏈接時(shí)調(diào)用函數(shù)saveNew;修改友情鏈接時(shí)調(diào)
84、用函數(shù)saveEdit;刪除一個(gè)版面時(shí)調(diào)用函數(shù)del;對(duì)友情鏈接的ID進(jìn)行修改時(shí)調(diào)用函數(shù)updateOrders。主要功能函數(shù)如下:</p><p> public static void saveNew(HttpServletRequest request)。該函數(shù)的功能是添加一個(gè)新友情鏈接。此函數(shù)調(diào)用時(shí)會(huì)對(duì)“友情鏈接信息”等判斷是否為空,如果為空時(shí)拋出異常,并給出用戶提示。如果新增成功,則會(huì)在友情鏈接表里增
85、加一條記錄;</p><p> public static void saveEdit(HttpServletRequest request)。該函數(shù)的功能是修改一個(gè)新友情鏈接。此函數(shù)調(diào)用前要先選擇想要修改的友情鏈接ID,如果沒(méi)有選定,程序?qū)伋霎惓#⒔o出用戶提示。如果修改成功,則在友情鏈接表里對(duì)應(yīng)的那條記錄就更新了;</p><p> public static void del(
86、HttpServletRequest request)。該函數(shù)的功能是刪除一個(gè)友情鏈接。此函數(shù)調(diào)用前先選擇要?jiǎng)h除的友情鏈接ID,如果沒(méi)有選定,程序?qū)伋霎惓?,并給出用戶提示,然后執(zhí)行刪除操作。如果刪除成功,則在友情鏈接表里對(duì)應(yīng)的那條記錄信息就不存在了;</p><p> public static void updateOrders(HttpServletRequest request)。該函數(shù)的功能是編輯一個(gè)
87、友情鏈接。此函數(shù)調(diào)用前要先選定想要編輯的友情鏈接ID,如果沒(méi)有選定,程序?qū)伋霎惓#⒔o出用戶提示。此函數(shù)主要?jiǎng)幼魇菍⒂亚殒溄拥腎D修改為用戶填寫的。如果編輯成功,則在友情鏈接表里對(duì)應(yīng)的那條記錄信息就更新了。</p><p> 4.3.3 論壇消息管理組件</p><p> ForumMSGAdmin.java類的功能用于管理員對(duì)系統(tǒng)后臺(tái)帖子的維護(hù),包括對(duì)帖子的增、刪、改、鎖定、置頂及
88、解除鎖定等功能。delAll的刪除某一個(gè)用戶的所有帖子;copyTopic是將某一個(gè)帖子轉(zhuǎn)移到另外一個(gè)版面去;moveTopic與copyTopic功能類似,也是將貼子轉(zhuǎn)移一個(gè)版面;鎖定帖子和解除鎖定調(diào)用函數(shù)lockMSG()和unloceMSG();置頂帖子和解除置頂調(diào)用函數(shù)topMSG()和untopMSG();加入精華帖子和解除精華調(diào)用函數(shù)bestMSG()和unbestMSG();delMSG()是刪除一個(gè)帖子;delTopic
89、()是刪除一個(gè)主題,包括這個(gè)主題下所有帖子。主要功能函數(shù)如下:</p><p> public void delAll(HttpServletRequest request)。該函數(shù)是刪除某一個(gè)用戶所有帖子的函數(shù)。此函數(shù)調(diào)用前先輸入要?jiǎng)h除帖子的用戶名,如果沒(méi)有輸入,程序要拋出異常,并給出用戶提示,然后執(zhí)行刪除操作。如果刪除成功,則在帖子表里某一個(gè)版面的所有那個(gè)用戶的帖子記錄信息就不存在了;</p>
90、<p> public void copyTopic(HttpServletRequest request)。該函數(shù)是將某一個(gè)帖子轉(zhuǎn)移到另外一個(gè)版面去。moveTopic與copyTopic功能類似,也是將帖子轉(zhuǎn)移一個(gè)版面。函數(shù)首先要判斷是否在相同版面內(nèi)進(jìn)行轉(zhuǎn)移操作(這是不允許的)。如果用戶在同一版面內(nèi)進(jìn)行轉(zhuǎn)移,程序要拋出異常給出提示。然后用戶必須選擇一個(gè)目標(biāo)主題。同樣,如果沒(méi)選,程序要拋出異常并給出提示。然后修改帖子信息
91、,主要是其所在版面信息;</p><p> public void lockMSG()和public void unlockMSG()。函數(shù)lockMSG()和unlockMSG()分別是鎖定帖子和解除鎖定的。鎖定后,用戶不能隨意對(duì)帖子進(jìn)行操作,解除鎖定后用戶才可以對(duì)帖子進(jìn)行操作;</p><p> public void topMSG()和public void untopMSG()
92、。函數(shù)topMSG()和untopMSG()分別是置頂帖子和解除置頂帖子。置頂帖子后,帖子就被置頂了,這樣帖子永遠(yuǎn)在界面最上方,方便用戶查看。解除置頂帖子后帖子就按照一般順序,排列到相應(yīng)位置;</p><p> public void bestMSG()和public void unbestMSG()。函數(shù)bestMSG()和unbestMSG()分別是加入精華帖子和解除精華帖子。加入精華帖子后,帖子就被定義為
93、精華帖子了,表示這個(gè)帖子內(nèi)容比較經(jīng)典,方便用戶查看。解除精華帖子后帖子就成為一般帖子了;</p><p> public void delMSG()和public void delTopic()。delMSG()是刪除一個(gè)帖子的函數(shù)。此函數(shù)調(diào)用前要修改其子帖的序號(hào)及父帖信息,還要修改用戶表里用戶的帖子數(shù)和日志文件信息等,然后執(zhí)行刪除操作。如果刪除成功,則在貼子表里某一個(gè)帖子的記錄信息就不存在了;刪除一個(gè)主題調(diào)用
94、函數(shù)delTopic(),包括這個(gè)主題下的所有帖子,同樣要修改子帖、父帖信息及日志文件信息等。</p><p> 4.3.4 論壇通告管理組件</p><p> ForumNewsAdmin.java類的功能用于管理員對(duì)系統(tǒng)后臺(tái)新聞的維護(hù),包括了對(duì)新聞的增、刪、改功能,添加一條新聞時(shí)調(diào)用函數(shù)saveNew:修改新聞時(shí)調(diào)用函數(shù)saveNews;刪除一條新聞時(shí)調(diào)用函數(shù)delNews;sav
95、eForumMaster是對(duì)論壇版主進(jìn)行修改。主要功能函數(shù)如下:</p><p> public static void saveNew(HttpServletRequest request)。該函數(shù)的功能是添加一條新聞。此函數(shù)調(diào)用時(shí)會(huì)對(duì)“新聞標(biāo)題”、“新聞內(nèi)容”等判斷非空,如果為空時(shí)拋出異常,并給出用戶提示。如果新增成功,則會(huì)在新聞表里增加一條記錄;</p><p> public
96、static void saveNews(HttpServletRequest request)。該函數(shù)的功能是修改一條新聞。此函數(shù)調(diào)用時(shí)會(huì)對(duì)“新聞標(biāo)題”、“新聞內(nèi)容”等判斷非空,如果為空時(shí)拋出異常,并給出用戶提示。如果修改成功,則在新聞表里對(duì)應(yīng)的那條記錄信息就更新了;</p><p> public static void delNews(HttpServletRequest request)。該函數(shù)的功能是
97、刪除一條新聞。此函數(shù)調(diào)用前先選擇要?jiǎng)h除的新聞ID,然后執(zhí)行刪除操作。如果刪除成功,則在新聞表里對(duì)應(yīng)的那條記錄信息就不存在了;</p><p> public static void saveForumMaster (HttpServletRequest request)。該函數(shù)的功能是對(duì)論壇某一個(gè)版面的版主進(jìn)行修改。</p><p> 4.4 前臺(tái)管理組件的設(shè)計(jì)</p>
98、<p> 在系統(tǒng)的前臺(tái)應(yīng)用中,根據(jù)頁(yè)面功能的設(shè)計(jì)需要,可以列出所需要的前臺(tái)管理功能,包括:論壇相關(guān)數(shù)據(jù)處理、用戶登陸注冊(cè)等信息管理、用戶好友管理、在線用戶統(tǒng)計(jì)管理、版面的管理、系統(tǒng)公告管理、論壇消息管理、推薦論壇列表。這些功能在頁(yè)面的編碼時(shí)都是必須的,因此針對(duì)這些功能,設(shè)計(jì)如下對(duì)應(yīng)的處理功能類組件。</p><p> 4.4.1 論壇屬性類組件</p><p> 圖4-3
99、 論壇屬性設(shè)置界面</p><p> FourmPropertiesManager.java類是對(duì)論壇配置參數(shù)的類,對(duì)配置參數(shù)表config進(jìn)行讀取設(shè)置等操作。主要函數(shù)如下:</p><p> public FourmPropertiesManager()。該構(gòu)造用來(lái)讀取數(shù)據(jù)表初始化參數(shù),如果讀取數(shù)據(jù)出錯(cuò)或者數(shù)據(jù)庫(kù)連接有誤,則要拋出異常,給出提示;</p><p&g
100、t; public static void saveConst(HttpServletRequest request)。該函數(shù)用來(lái)保存常用的屬性參數(shù),如“論壇名稱”、“論壇的鏈接地址”、“主頁(yè)名稱”、“主頁(yè)地址”、“郵件服務(wù)器名稱”、“郵件發(fā)送人地址”,“論壇logo地址”、“論壇圖片目錄”、“論壇表情目錄”等;</p><p> public static void saveGrade(HttpServle
101、tRequest request)。該函數(shù)用來(lái)保存論壇分?jǐn)?shù)變量的值,如健康值、財(cái)富值、魅力值等。</p><p> 4.4.2 用戶類組件</p><p> SkinUtil.java類用來(lái)對(duì)用戶身份的相關(guān)信息進(jìn)行處理,例如userLogin是用戶登陸的處理函數(shù);checkUserStats檢查用戶狀態(tài);getUserClass取得用戶等級(jí)字符串描述;getPoint取得用戶得分;ge
102、tTopList取得發(fā)表文章最多用戶列表。主要函數(shù)如下:</p><p> public static Vector get TopList(HttpServletRequest request)。該函數(shù)用來(lái)取得發(fā)表文章最多用戶列表,不同情況下讀取的數(shù)據(jù)列表是不同的。</p><p> 圖4-4 用戶查看界面</p><p> UserManager.jav
103、a類是用來(lái)處理用戶個(gè)人信息的,例如createUser是新增一個(gè)用戶;findUser是查詢一個(gè)符合某些條件的用戶;結(jié)果一般會(huì)返回一條記錄;findUsers與findUser用途相同;不同的是findUser結(jié)果一般會(huì)返回多于一條記錄;updateUser修改一個(gè)用戶的基本信息;delUser刪除一個(gè)用戶信息;addAdmin是新增一個(gè)管理員用戶信息。主要函數(shù)如下:</p><p> public stati
104、c void createUser(String usename,String password)。該函數(shù)是用來(lái)新增一個(gè)用戶的基本信息。</p><p> User.java類也是用來(lái)處理用戶信息的,其主要函數(shù)checkUser是判斷用戶登陸的,如用戶名是否輸入、密碼是否正確;getUserClassStr是根據(jù)用戶等級(jí)讀取用戶相應(yīng)的等級(jí)圖片的。</p><p> 4.4.3 好友類組
105、件</p><p> 圖4-5 好友操作界面</p><p> FriendsManager.java類是用來(lái)處理用戶好友信息的,例如saveFriend是新增一個(gè)用戶好友;getFriendList查詢符合某些條件的用戶好友姓名,結(jié)果只返回用戶名;getFrinedInfo與getFriendList用途相同,不同的是getFriendInfo結(jié)果返回符合條件的用戶所有信息;del
106、Friend是刪除一個(gè)好友的基本信息;allFriend是刪除關(guān)于這個(gè)好友的所有信息。主要函數(shù)如下:</p><p> public void saveFriend(HttpServletRequest)。該函數(shù)是新增一個(gè)用戶的基本信息,新增時(shí)要判斷每次最多只能添加5位用戶及論壇有沒(méi)有這個(gè)用戶,如果有異常則要提示。</p><p> 4.4.4 版面類組件</p><
107、;p> 圖4-7 論壇版面管理界面</p><p> GateWay.java類是對(duì)論壇配置參數(shù)的類,主要函數(shù)是設(shè)置分類ID及取得分類名稱的。</p><p> GateWayFactory.java是版面分類的總體類,主要函數(shù)如下:</p><p> public static Vector getGateWays()。該函數(shù)用來(lái)取得所有版面分類的
108、基本信息。</p><p> GateWayNotFoundException.java類用來(lái)處理查詢或讀取過(guò)程中某個(gè)版面分類不存在的情況,主要是異常處理。</p><p> ForumTopic.java是一條帖子的對(duì)象類,主要函數(shù)是取得符合某些條件的帖子信息。</p><p> ForumTopicNotFoundException.java類用來(lái)處理查詢
109、或讀取過(guò)程中某個(gè)帖子不存在的情況,主要是異常處理。</p><p> Forum.java類用來(lái)對(duì)帖子進(jìn)行管理,主要有對(duì)帖子、消息、投票的增、刪、改功能,還有取得符合某些條件的帖子信息,如精華帖子、主題帖子等。</p><p> ForumFactroy.java用來(lái)對(duì)某一個(gè)版面進(jìn)行管理,其中函數(shù)getForums取得某一個(gè)分類的所有版面。</p><p>
110、4.4.5 消息類組件</p><p> 圖4-8 消息處理界面</p><p> SMSManager.java類是對(duì)消息進(jìn)行讀取操作的類。主要函數(shù)checkSMS()檢查是否有新消息;getNewSMS()取得新消息;getSMSMSG()取得個(gè)人消息維護(hù)界面時(shí)不同郵箱的消息;getInBox()取得收件箱的消息;getOutBox()取得發(fā)件箱的消息;getRecycle()取
111、得回收站的消息;getIsSend()取得已發(fā)送的消息,還有刪除滿足不同條件的消息。</p><p><b> 第五章 系統(tǒng)實(shí)現(xiàn)</b></p><p> 5.1 數(shù)據(jù)庫(kù)連接的實(shí)現(xiàn)</p><p> 加載數(shù)據(jù)庫(kù)驅(qū)動(dòng)時(shí),通過(guò)如下代碼予以實(shí)現(xiàn):</p><p> import java.sql.Connection
112、;</p><p> import java.sql.DriverManager;</p><p> public class Conn {</p><p><b> // 非鏈接池</b></p><p> public static Connection getConn() {</p><
113、p><b> // 建立連接對(duì)象</b></p><p> Connection conn = null;</p><p> // 說(shuō)明JDBC驅(qū)動(dòng)類所在位置的字符串,與驅(qū)動(dòng)所在目錄對(duì)應(yīng)。</p><p> String driver = "com.mysql.jdbc.Driver";</p>
114、<p> // MySQL的JDBC URL 字符串</p><p> // 連接到本地主機(jī),端口為3306,數(shù)據(jù)庫(kù)為mysql,</p><p> String sourse = "jdbc:mysql://127.0.0.1:3306/eforum?characterEncoding=utf-8";</p><p><b
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 社區(qū)交流平臺(tái)網(wǎng)站畢業(yè)設(shè)計(jì)
- 在線交流平臺(tái)iOS客戶端的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于thinkphp的在線文檔與交流平臺(tái)的設(shè)計(jì)與開(kāi)發(fā)
- 基于asp.net的網(wǎng)絡(luò)學(xué)習(xí)交流平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)設(shè)計(jì)】
- 兒童特色繪畫交流平臺(tái)設(shè)計(jì)與實(shí)現(xiàn) 【畢業(yè)論文】
- 計(jì)量網(wǎng)絡(luò)交流平臺(tái)的設(shè)計(jì).pdf
- 基于ThinkPHP的在線文檔與交流平臺(tái)的設(shè)計(jì)與開(kāi)發(fā).docx
- 搭建科技交流平臺(tái)
- 搭建科技交流平臺(tái)
- 基于jsp的文檔共享與交流平臺(tái)畢業(yè)設(shè)計(jì)外文翻譯、開(kāi)題報(bào)告、文獻(xiàn)綜述
- 搭建創(chuàng)新成果展示交流平臺(tái)
- 中美交流平臺(tái)建設(shè)-成都1
- 大學(xué)生實(shí)習(xí)招聘信息資訊交流平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn) 【畢業(yè)論文】
- 基于android的花卉交流平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)——畢業(yè)論文
- 課程學(xué)習(xí)與交流平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)
- 癌癥患者交流平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 校園信息交流平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 匯編語(yǔ)言課程網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)--在線師生交流平臺(tái)與在線自測(cè)---開(kāi)題報(bào)告
- 法律案例交流平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 網(wǎng)絡(luò)即時(shí)交流平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn).pdf
評(píng)論
0/150
提交評(píng)論