版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p> 學(xué)科分類號 </p><p> 本科生畢業(yè)論文(設(shè)計)</p><p> 題目(中文): 基于JSP的BBS論壇管理系統(tǒng) </p><p> (英文): BBS Forum Management System </p><p> Based on Jsp </p&g
2、t;<p> 學(xué)生姓名: </p><p> 學(xué) 號: </p><p> 系 別: </p><p> 專 業(yè): </p><p> 指導(dǎo)教師: </p><p> 起止日期: </p>
3、;<p> 2012年 4 月 4 日</p><p><b> 目 錄</b></p><p><b> 摘 要1</b></p><p><b> 關(guān)鍵詞1</b></p><p> Abstract1</p><
4、;p> Keywords1</p><p><b> 前 言2</b></p><p> 1 系統(tǒng)技術(shù)及運行環(huán)境3</p><p> 1.1 JSP技術(shù)簡介3</p><p> 1.2 JAVABEAN技術(shù)簡介4</p><p> 1.3 JDBC技術(shù)簡介4</
5、p><p> 1.4 TOMCAT技術(shù)簡介5</p><p><b> 1.5運行環(huán)境5</b></p><p><b> 2 需求分析6</b></p><p> 2.1 編寫目的6</p><p> 2.2 任務(wù)目標6</p><p&g
6、t; 2.2.1基本性能6</p><p> 2.2.2開發(fā)目標7</p><p> 2.2.3 應(yīng)用目標7</p><p> 2.3選擇編程語言7</p><p> 2.3.1 JSP與ASP的比較7</p><p> 2.3.2 JSP的特點與優(yōu)點8</p><p>
7、<b> 3系統(tǒng)設(shè)計10</b></p><p> 3.1系統(tǒng)設(shè)計思想10</p><p> 3.1.1 網(wǎng)上論壇系統(tǒng)說明10</p><p> 3.1.2 網(wǎng)上論壇系統(tǒng)總體分析10</p><p> 3.2 數(shù)據(jù)庫設(shè)計思想11</p><p> 3.3 各單元模塊設(shè)計12
8、</p><p> 3.3.1用戶注冊登陸功能12</p><p> 3.3.2會員發(fā)貼與回復(fù)功能13</p><p> 3.3.3管理員管理帖子與用戶管理功能15</p><p><b> 4 編碼實現(xiàn)16</b></p><p> 4.1 功能總體說明16</p>
9、;<p> 4.1.1 功能總體說明16</p><p> 4.1.2主要功能流程17</p><p> 4.2各個功能模塊的實現(xiàn)17</p><p> 4.2.1數(shù)據(jù)庫的連接17</p><p> 4.2.2用戶登陸與注冊模塊的實現(xiàn)18</p><p> 4.2.3分頁顯示的功能實
10、現(xiàn)23</p><p> 4.2.4 發(fā)表與回復(fù)功能模塊實現(xiàn)24</p><p> 4.2.5后臺管理模塊的實現(xiàn)27</p><p><b> 5 系統(tǒng)測試30</b></p><p><b> 總 結(jié)31</b></p><p><b> 參考
11、文獻33</b></p><p><b> 致 謝33</b></p><p> 基于JSP的BBS論壇管理系統(tǒng)</p><p><b> 摘 要</b></p><p> 為了方便信息的交流,在結(jié)合動態(tài)服務(wù)網(wǎng)頁(JSP)和MYSQL 技術(shù)之下開發(fā)了這個快截、界面友好的網(wǎng)上交
12、流系統(tǒng)。論壇使用動態(tài)服務(wù)網(wǎng)頁(JSP)技術(shù)建設(shè)論壇的骨干框架,使用MYSQL制作系統(tǒng)的數(shù)據(jù)庫,實現(xiàn)了一個功能相對齊全的論壇系統(tǒng),網(wǎng)友可以自由地提出問題以及幫助他人解決問題,或者交流經(jīng)驗。 該論壇功能較齊全,在這里可以自由地發(fā)表自己的觀點和對論壇的主題發(fā)表意見,我們還可以對網(wǎng)友的問題及時地解決,獲取對自己有用的知識。該論壇還有一些特殊的功能,強大的搜索功能等。</p><p><b> 關(guān)鍵詞&
13、lt;/b></p><p> 動態(tài)服務(wù)網(wǎng)頁;論壇;用戶管理</p><p> BBS forum Management System Based on JSP</p><p><b> Abstract</b></p><p> In order to facilitate people informat
14、ion the exchange, in unified JSP and MYSQL under the server technology has developed this quick truncation, the contact surface friendly system. The system use the JSP technology construction the main frame, use MYSQL as
15、 the systems database, realized a forum system which function relatively completely, the net friend has been possible freely to propose the question as well as helped other people to solve the problem, or exchange experi
16、ence. This forum fun</p><p><b> Keywords</b></p><p> Java Server Pages; BBS; user management</p><p><b> 前 言</b></p><p> Internet是目前世界上最大的計
17、算機互聯(lián)網(wǎng)絡(luò),它遍布全球,將世界各地各種規(guī)模的網(wǎng)絡(luò)連接成一個整體。作為Internet上一種先進的,易于被人們所接受的信息檢索手段,World Wide Web(簡稱WWW)發(fā)展十分迅速,成為目前世界上最大的信息資源寶庫。據(jù)估計,目前Internet上已有上百萬個Web站點,其內(nèi)容范圍跨越了教育科研、文化事業(yè)、金融、商業(yè)、新聞出版、娛樂、體育等各個領(lǐng)域,其用戶群十分龐大,因此,建設(shè)一個好的Web站點對于一個機構(gòu)的發(fā)展十分重要。近年來,隨
18、著網(wǎng)絡(luò)用戶要求的不斷提高及計算機科學(xué)的迅速發(fā)展,特別是數(shù)據(jù)庫技術(shù)在Internet中的廣泛應(yīng)用,Web站點向用戶提供的服務(wù)將越來越豐富,越來越人性化。</p><p> 我們發(fā)現(xiàn)這樣一個事實,一個用戶在訪問一個網(wǎng)站時一般來講只對該網(wǎng)站的部分內(nèi)容感性趣,而且這種興趣會持續(xù)一段時間。這點啟發(fā)了我們,如果能根據(jù)用戶的喜好為不同的用戶顯示其個性化的頁面,即著重顯示該用戶感興趣的內(nèi)容,將為用戶節(jié)約大量的檢索時間,而且這樣
19、的網(wǎng)頁顯然是更具有吸引力的。一些站點已經(jīng)在這方面做出了一定的嘗試,通常采用的方法是,在用戶登陸時為其提供一系列的選項,使用戶能夠?qū)φ军c進行一些自主的設(shè)置。這樣做能夠使站點呈現(xiàn)一定程度的個性化,但是對用戶來講,還是比較煩瑣,而且在用戶了解一個站點前讓其對站點進行設(shè)置,其結(jié)果未免有些粗糙。于是我們構(gòu)想了這樣一種方案,對用戶登陸后的動作進行跟蹤,分析,發(fā)掘用戶點擊的規(guī)律,即用戶先后點擊的關(guān)聯(lián)規(guī)則,這樣,在用戶點擊一個主題(鏈接)之后,系統(tǒng)能夠
20、自動生成一個頁面,其中包含了該主題下用戶經(jīng)常關(guān)注的內(nèi)容(若干鏈接),這樣便在無須用戶做出任何額外工作的情況下實現(xiàn)了為用戶量身訂做的個性化頁面。</p><p> 要實現(xiàn)這樣的功能,離不開后臺數(shù)據(jù)庫的支持。用戶驗證信息,收集到的用戶點擊信息,主題層次信息,分析得出的關(guān)聯(lián)規(guī)則表等大量的數(shù)據(jù)都由數(shù)據(jù)庫管理系統(tǒng)管理。本文中數(shù)據(jù)庫服務(wù)器端采用了MYSQL數(shù)據(jù)庫并以先進的JDBC技術(shù)進行數(shù)據(jù)庫存取等操作,使Web與數(shù)據(jù)庫緊
21、密聯(lián)系起來。</p><p> 本文作者主要完成Web服務(wù)器端的用戶管理、帖子管理、數(shù)據(jù)庫管理、瀏覽和查找功能等設(shè)計、實現(xiàn)與完善以及整個實驗網(wǎng)站的組織建立和測試工作。</p><p> 1 系統(tǒng)技術(shù)及運行環(huán)境</p><p> 1.1 JSP技術(shù)簡介</p><p> JSP是服務(wù)器端的腳本語言,是以SERVLET為基礎(chǔ)開發(fā)而成的動態(tài)
22、網(wǎng)頁生成技術(shù),它的底層實現(xiàn)是JAVA SERVLET。</p><p> JSP(JAVA SERVER PAGES)由HTML代碼和潛入其中的JAVA代碼所組成。服務(wù)器在頁面被客戶端請求以后對這些代碼進行處理,然后將生產(chǎn)的HTML頁面返回客戶端的瀏覽器</p><p> JSP的特點是面向?qū)ο蟆?跨平臺、 和SERVLET一樣穩(wěn)定、 可以使用SERVLET提供的API,同時克服了SE
23、RVLET的缺點。</p><p> 在使用JSP時一般和JAVABEANS結(jié)合使用,從而將界面表現(xiàn)和業(yè)務(wù)邏輯分離。</p><p> 1.2 JAVABEAN技術(shù)簡介</p><p> JAVABEAN是基于JAVA的組建模型,有點類似于MICROSOFT的COM組建。</p><p> 在JAVA平臺中,可以無限擴充JAVA程序的
24、功能,通過JAVABEAN的組合可以快速生產(chǎn)新的應(yīng)用程序。</p><p> 對于程序員來說,最好的一點就是JAVABEAN可以實現(xiàn)代碼的重復(fù)利用,另外對于程序的易維護性等等也有很重大的意義。</p><p> JAVABEAN 通過JAVA虛擬機(JAVA VIRTUAL MACHINE)執(zhí)行,運行JAVABEAN最小的需求是JDK1.1或者以上的版本。</p><
25、;p> JAVABEAN傳統(tǒng)的應(yīng)用在于可視化的領(lǐng)域,如AWT下的應(yīng)用。自從JSP誕生后,JAVABEAN更多的應(yīng)用在了非可視化領(lǐng)域,在服務(wù)器端應(yīng)用方面表現(xiàn)出了越來越強的生命力。</p><p> 1.3 JDBC技術(shù)簡介</p><p> JDBC是一組API,定義了用來訪問數(shù)據(jù)庫源的標準JAVA類庫,使用這種類庫可以使用一種標準的方法、方便地訪問數(shù)據(jù)庫資源。</p>
26、;<p> JDBC的目標是使應(yīng)用程序開發(fā)人員使用JDBC可以連接任何提供了JDBC驅(qū)動程序的數(shù)據(jù)庫系統(tǒng),這樣就使得程序員無須對特定的數(shù)據(jù)庫的特點有過多的了解,從而大大簡化了和加快了開發(fā)過程。</p><p> JDBC API 為訪問不同的數(shù)據(jù)庫提供了一種統(tǒng)一途徑,像ODBC一樣,JDBC為開發(fā)者屏蔽了一些細節(jié)問題。</p><p> 另外,JDBC對數(shù)據(jù)庫的訪問也具
27、有平臺無關(guān)性。</p><p> 1.4 TOMCAT技術(shù)簡介</p><p> 在已JAVA技術(shù)為的WEB開發(fā)領(lǐng)域中,TAMCAT是許多JAVA程序員相當喜愛的開放源代碼產(chǎn)品,它附屬在APACHE SOFTWARE FOUNDATION 所主導(dǎo)的JAKART項目內(nèi)。由于TAMCT是SERVLET與JSP技術(shù)的參考實現(xiàn)(REFERNCE IMPLEMENTATION),</p&
28、gt;<p> 所以它不但可以當作獨立的WEB服務(wù)器,也可以結(jié)合其它的WEB服務(wù)器,只擔任SERVLET容器或JSP容器的角色。</p><p><b> 1.5運行環(huán)境</b></p><p> 為了保證BBS論壇管理系統(tǒng)運行的高效性和可靠性,服務(wù)器應(yīng)具有較高的軟硬件配置,客戶端的要求不是很高。此應(yīng)用程序可廣泛運行于國際互聯(lián)網(wǎng)即Internet,
29、也可適用于內(nèi)部的局域網(wǎng)。其運行要求如下:軟件環(huán)境:客戶端: Windows95/98/2000/XP,Internet Explorer(IE)等。</p><p> 服務(wù)器端:Windows NT/Windows2000,Tomcat 5.0,JDK 1.5及其以上版本,IE等;</p><p> 數(shù)據(jù)庫:采用MYSQL,運行于服務(wù)器端。硬件環(huán)境:服務(wù)器 CPU:PIII 5
30、00以上 ,內(nèi)存:512M以上??蛻魴C CPU:P200MMX以上,內(nèi)存:32M以上。</p><p><b> 2 需求分析</b></p><p><b> 2.1 編寫目的</b></p><p> 當今網(wǎng)絡(luò)技術(shù)逐漸滲入社會生活各個層面,以前網(wǎng)站上的論壇管理系統(tǒng)要用戶登陸以后才能進行相關(guān)訪問及互動。而隨著網(wǎng)絡(luò)
31、互聯(lián)技術(shù)的進步,現(xiàn)在網(wǎng)站投票只需打開網(wǎng)頁就可進行論壇留言。論壇對象是很多的,各個層次都可進行論壇訪問,大至國家領(lǐng)導(dǎo),小至一個普通干部,訪問和留言從到指定用戶進行表格到現(xiàn)在通過網(wǎng)絡(luò)直接點擊相應(yīng)就可進行。網(wǎng)上論壇管理系統(tǒng)可解決游客訪問及留言,致使現(xiàn)在幾乎各個網(wǎng)站都有各種類型網(wǎng)站論壇管理系統(tǒng),用戶可選擇自己的看法。所以我提出了本課題的研究。</p><p><b> 2.2 任務(wù)目標</b>&l
32、t;/p><p><b> 2.2.1基本性能</b></p><p> 系統(tǒng)包括主要的功能:新用戶的注冊,會員登錄,管理員刪除用戶,管理員刪除帖子和修改帖子,查詢主題,和查詢用戶這些功能,游客瀏覽留言,會員新增主題,會員留言回復(fù),查詢主題這些功能,可以滿足一般的用戶需要。</p><p><b> 2.2.2開發(fā)目標</b&
33、gt;</p><p> 這個系統(tǒng)預(yù)期的目的是為了做成交互式的網(wǎng)頁,方便客戶端和瀏覽器端之間的交流。通過論壇,人們能夠相互交流溝通,把疑惑在論壇里公布,大家獻計獻策,共同學(xué)習(xí),共同進步。</p><p> 2.2.3 應(yīng)用目標</p><p> 網(wǎng)上論壇系統(tǒng)是一個會員登錄留言系統(tǒng)。網(wǎng)上游客能夠瀏覽論壇上的帖子,并且能夠注冊成為用戶。論壇注冊會員能夠發(fā)表帖子,讓
34、大家積極參與討論。論壇管理員能夠便于管理論壇,包括瀏覽游客留言,審核留言,對于不健康或是不利于社會穩(wěn)定的留言能進行刪除操作。</p><p><b> 2.3選擇編程語言</b></p><p> 2.3.1 JSP與ASP的比較</p><p> 總的來講Java Server Page(JSP)技術(shù)和Microsoft 公司提供的Ac
35、tive Server Pages(ASP)技術(shù)在技術(shù)方面有許多相似之處:兩者都是基于WEB應(yīng)用實現(xiàn)動態(tài)交互網(wǎng)頁制作提供技術(shù)環(huán)境支持。兩者都能為程序開發(fā)人員提供實現(xiàn)應(yīng)用程序的編制與自帶組建設(shè)計網(wǎng)頁從邏輯上分離的技術(shù)。而且兩者都能替代CGI使網(wǎng)站建設(shè)與發(fā)展變得較為簡單與快捷。</p><p><b> 1).相同之處 </b></p><p> 都是運行于服務(wù)器端的
36、腳本語言,兩者都是動態(tài)網(wǎng)頁生成技術(shù),這兩項技術(shù)都是由HTML來決定網(wǎng)頁的版面,都是在HTML代碼中混合某種代碼,有語言引擎解釋執(zhí)行程序代碼。HTML主要負責描述信息的顯示樣式,而程序代碼則用來描述處理邏輯。</p><p><b> 2).不同之處</b></p><p> JSP是由SUN公司推出的一項技術(shù),是基于JavaServlet 以及整個JAVA體系的W
37、EB開發(fā)技術(shù),利用這項技術(shù)可以建立先進、安全和跨平臺的動態(tài)網(wǎng)站。ASP是MS公司推出的技術(shù)只能在MS的平臺上運行,無法實現(xiàn)跨平臺,也無安全性保障。</p><p> ASP下的編輯語言是VBScript 之類的腳本語言,而JSP使用的是JAVA。</p><p> ASP與JSP還有一個更為本質(zhì)的區(qū)別:兩種語言引擎用完全不一樣的方式來處理也面中潛入的程序代碼。在ASP下,VBScrip
38、t代碼被ASP引擎解釋執(zhí)行。在JSP中,代碼被編譯生產(chǎn)Servlet并有JAVA虛禮機執(zhí)行,這種也面僅在對JSP也面的第一次請求時發(fā)生。</p><p> 2.3.2 JSP的特點與優(yōu)點</p><p> 綜合而言,JSP技術(shù)具有下面的特點:</p><p> 1)write once run anywhere</p><p> JS
39、P技術(shù)繼承了JAVA先天性的先進概念“write once run anywhere”這種概念正越來越深遠的影響著互連網(wǎng)行業(yè)的交互式、WEB設(shè)計的理念。JSP Pages 可以非常容易的開平臺跨WEB服務(wù)器軟件來是設(shè)計和開放源代碼。</p><p> 2)支持多種動態(tài)網(wǎng)頁格式</p><p> 目前對使用JSP技術(shù)設(shè)計出來的網(wǎng)頁應(yīng)該采取什么樣的格式還沒有一個明確的標準。一般來說JSP技
40、術(shù)即可以支持HTML/DHTML的傳統(tǒng)瀏覽器文件格式,又可以支持應(yīng)用與無線通訊設(shè)備例如移動電話、PDA等設(shè)備進行網(wǎng)頁瀏覽器的VML文件格式,還可以支持其它一些B2B應(yīng)用的XML格式。與以往的其它WEB應(yīng)用技術(shù)相比較JSP技術(shù)有它很鮮明的特點。</p><p> 3)JSP 標簽可擴沖性</p><p> 盡管JSP與ASP都使用標簽與腳本技術(shù)來制造動態(tài)WEB網(wǎng)頁,但是JSP技術(shù)能夠使開
41、發(fā)者擴展JSP標簽,使得應(yīng)用JSP的開發(fā)者能定制標簽庫所以網(wǎng)頁制作者可以充分利用與XML兼容的標簽技術(shù),大大減少了對腳本語言的依賴。由于指定標簽庫技術(shù)使得網(wǎng)頁制作者降低了制作網(wǎng)頁和想多個網(wǎng)頁擴充關(guān)鍵功能的復(fù)雜程度。</p><p> 4)JSP跨平臺的可重用性</p><p> JSP的開發(fā)人員在開發(fā)過程中一直關(guān)注可重用性,JSP足見、企業(yè)JavaBean或制定的標簽都是跨平臺可重用的
42、。企業(yè)JavaBean可以訪問傳統(tǒng)的數(shù)據(jù)庫并能并能已分布式系統(tǒng)模式工作于UNIX和WINDOWS平臺,JSP標簽可擴充功能為開發(fā)人員提供簡便的與XML兼容的接口,即共享網(wǎng)頁的打包功能使其完全的工業(yè)標準化。這種基于組建的模式能夠有效的提高應(yīng)用程序的開發(fā)效率。因為這種模式能夠使開發(fā)人員利用快捷的子組建快速創(chuàng)建模板應(yīng)用程序。然后再整和一些附加功能將其打包成一個JAVABEAN組建。</p><p><b>
43、 5)易于維護性</b></p><p> 基于JSP技術(shù)的應(yīng)用程序比基于ASP的應(yīng)用程序更易于維護和管理。腳本語言都很好服務(wù)于小的應(yīng)用程序但不能適宜大型的復(fù)雜的應(yīng)用程序,因為JAVA是結(jié)構(gòu)化的,它比較比較容易創(chuàng)建和維護龐大的組建化的應(yīng)用程序。</p><p><b> 3系統(tǒng)設(shè)計</b></p><p> 3.1系統(tǒng)設(shè)計思想
44、</p><p> 3.1.1 網(wǎng)上論壇系統(tǒng)說明</p><p> 此網(wǎng)上論壇中三種不同角色游客、注冊用戶管理員分別可現(xiàn): 游 客:查看帖子、注冊新用戶?!?注冊用戶:查看帖子、發(fā)新帖子、回復(fù)信息、查詢主帖。 管理員:帖子管理、用戶管理、數(shù)據(jù)庫管理。</p><p>
45、 3.1.2 網(wǎng)上論壇系統(tǒng)總體分析</p><p> 通過上面的功能說明,我們可以將論壇的制作分為四大部分:</p><p> ?。?) 會員注冊和登陸模塊:</p><p> 這個模塊的功能,就是新來網(wǎng)友可以填寫注冊資料 ,通過審核后便成為本論壇的正式會員,并可以以會員身份登陸論壇。</p><p> (2) 文章顯示模塊:</
46、p><p> 顯示所有會員最新發(fā)表的一些文章主題。</p><p> ?。?) 發(fā)表文章模塊:</p><p> 為會員提供發(fā)表文章的地方,以及回復(fù)主題等。</p><p> (4) 論壇與用戶管理模塊:</p><p> 版主以上職務(wù)可以進行對文章和用戶進行處理,查詢,修改,刪除等。了解了具體的功能需求后,就可以
47、按模塊的開始論壇的設(shè)計了。當然,這些模塊的只是在功能上對論壇結(jié)構(gòu)的劃分,實際上并不能夠完全的把他們獨立出來進行設(shè)計。對于這種較小的應(yīng)用,也沒有必要進行完全的模塊化設(shè)計,在良好的規(guī)劃下直接寫程序代碼或許來的更為簡單一些。</p><p> 3.2 數(shù)據(jù)庫設(shè)計思想</p><p> 在建設(shè)網(wǎng)站系統(tǒng)之前,我們必須對系統(tǒng)所用到的數(shù)據(jù)進行大致的分類和具體的結(jié)構(gòu)設(shè)計,既要做到清晰明了,又要能適應(yīng)系
48、統(tǒng)各項功能的調(diào)用,而不至于產(chǎn)生結(jié)構(gòu)上的邏輯混亂,保證關(guān)鍵數(shù)據(jù)在意外情況下不會被破壞,可以說數(shù)據(jù)庫是系統(tǒng)的重中之重。</p><p> 數(shù)據(jù)庫設(shè)計要遵循一些規(guī)則,一個好的數(shù)據(jù)庫滿足一些嚴格的約束和要求。盡量分離各實體對應(yīng)的表,一個實體對應(yīng)一個表,分析該實體有哪些屬性,對應(yīng)有些什么字段,以及各實體之間的聯(lián)系。實體、屬性與聯(lián)系是進行概念設(shè)計時要考慮的三個元素,也是一個好的數(shù)據(jù)庫設(shè)計的核心。</p>&l
49、t;p> 從實際出發(fā),經(jīng)過仔細地設(shè)計,得到各表的設(shè)計如表3.1——3.3所示。</p><p> 表3.1 帖子信息表article</p><p> 表3.2 用戶信息表user</p><p> 表3.3管理員信息表adminuse</p><p> 3.3 各單元模塊設(shè)計</p><p> 3.
50、3.1用戶注冊登陸功能</p><p> 此部分是實現(xiàn)用戶的注冊功能。通過填寫注冊資料,正確填寫后,點擊注冊按鈕后便可注冊成為正式的會員。如圖3.1</p><p><b> 圖3.1 注冊</b></p><p> 用戶資料填寫正確就可以注冊了。而且對其用正則表達式做了一些限制。用戶名只能是3-12位單字字符,而且不允許注冊重復(fù)的用戶
51、名。性別只能選擇男或女其中一個。密碼最多不能超過12位,兩次密碼必須輸入一致,否則不可以注冊。E-mail必須輸入有效的郵箱地址,以便日后能使用到論文的各種功能。只要用戶按照出現(xiàn)提示信息輸入進去就可以了。用戶注冊成功后就可以使用會員所擁有的一切功能了。</p><p> 3.3.2會員發(fā)貼與回復(fù)功能</p><p> 此部分實現(xiàn)會員的發(fā)表新帖以及回帖等功能。</p>&l
52、t;p> 發(fā)表帖子會員只針對會員開放,如果想發(fā)表新的主題,必須登陸如果沒有賬號必須注冊以后便可直接點擊發(fā)表帖子按鈕。進到發(fā)表帖子頁面后,首先要寫自己想發(fā)表的主題,然后填寫作者和正文。如果沒有登陸直接點擊發(fā)表主題,則會直接跳到用戶登陸頁面。</p><p> 發(fā)表主題如圖3.2所示:</p><p><b> 圖3.2 發(fā)表新貼</b></p>
53、<p> 回復(fù)主題界面 如圖 3.3所示:</p><p><b> 圖3.3 回復(fù)主題</b></p><p> 發(fā)表成功回到顯示主題頁面 再點擊主題會看到主題貼的相關(guān)內(nèi)容和回復(fù)內(nèi)容?;貜?fù)帖子只針對會員開放,游客不可以回復(fù)主題?;貜?fù)內(nèi)容比較全面,可有表情,也可以設(shè)置字體大小顏色,段落格式等。如果沒有登陸直接點擊回復(fù)則直接跳轉(zhuǎn)到登陸頁面。</p
54、><p> 3.3.3管理員管理帖子與用戶管理功能</p><p> 此部分主要是管理員對論壇的帖子和會員進行綜合管理,刪除、編輯、查詢、等等。普通會員是不可以進行此操作的。管理員登陸界面如圖3.4所示:</p><p> 圖3.4 管理員登陸</p><p> 首先用session判斷管理員是否登陸,如果沒有登陸直接在瀏覽器里面輸入管理
55、界面的地址則不能對其內(nèi)容進行操作。這樣保證了數(shù)據(jù)的安全性。管理員登陸以后可以對有些文章內(nèi)容有地方不足時,可以對其進行編輯修改,當然對于不好的帖子或者就是灌水的帖子,嚴重的可以直接刪除了。帖子都是按照發(fā)表時間和回復(fù)時間排列的,時間最新的帖子則排在最前面,時間越舊的就越靠后面。</p><p> 如果登陸成功則進入管理員管理頁面,如圖3.5所示:</p><p> 圖 3.5 后臺管理&l
56、t;/p><p><b> 4 編碼實現(xiàn)</b></p><p> 4.1 功能總體說明</p><p> 4.1.1 功能總體說明</p><p><b> (1)前臺功能頁面</b></p><p> 登陸與注冊:register.jsp、uselogin.jsp、
57、reg_failure.jsp、log_failure.jsp</p><p> 帖子展示:articleFlat.jsp 、articleDetailFlat.jsp</p><p> 發(fā)表主題帖:post.jsp</p><p> 回復(fù):reply.jsp、replyDeal.jsp</p><p> 搜索:articleSear
58、ch.jsp</p><p><b> (2)后臺功能頁面</b></p><p> 主頁面框架: fram.jsp、left.jsp、main.jsp、top.html</p><p> 帖子管理:modify.jsp、delete.jsp、articleSearch.jsp、searchResult.jsp、articleFlat1.
59、jsp</p><p> 用戶管理:userMrg.jsp、login.jsp、searchResultUser.jsp、deleteUser.jsp</p><p> 4.1.2主要功能流程</p><p> 圖 4.1 主要功能流程圖</p><p> 4.2各個功能模塊的實現(xiàn)</p><p> 4.2.
60、1數(shù)據(jù)庫的連接</p><p> 出于安全性的考慮,我們將與數(shù)據(jù)庫的連接,單獨寫出來并進行編譯,也就是數(shù)據(jù)庫連接的javabean文件,編譯出來的.class文件是無法被修改的只能通過源文件進行修改,我們在JSP頁面中只用直接調(diào)用該方法即可,在本系統(tǒng)中我們將其命名為DBConMgr.java</p><p><b> 關(guān)鍵代碼如下:</b></p>
61、<p> 表4.1 數(shù)據(jù)庫的連接</p><p> 4.2.2用戶登陸與注冊模塊的實現(xiàn)</p><p> 用戶登陸模塊是防止非法用戶登陸的第一道防線,通過它可以保護后臺數(shù)據(jù)庫的安全性,當用戶要進行發(fā)貼或回復(fù)時,首先要進入的就是身份驗證界面,只有在密碼正確的情況下才能進行以后的操作,如果輸入的密碼不正確,則不能進行發(fā)表新帖和回復(fù)。如果用戶以瀏覽者的身份進入網(wǎng)站,則只能進行一般
62、的帖子瀏覽和搜索,而不能發(fā)表新帖和回復(fù),在點擊發(fā)表新帖后,系統(tǒng)會判斷該用戶是否是登陸用戶,如果不是則進入登陸頁面,如果是第一次登陸,請先注冊。</p><p> 登陸的具體實現(xiàn)要通過一個全程變量,即Session變量來實現(xiàn),用戶登錄的界面userlogin.jsp,從user表查得用戶提交的帳戶名和密碼正確后,用一個全局變量,即Session變量保存這一消息該變量稱為session.setAttribute(&
63、quot;uLogined", "true");。具體的判斷過程為:</p><p> 表4.2用戶登陸代碼實現(xiàn)</p><p> boolean ulog = false; //判斷用戶是否登陸</p><p> String u = (String)session.getAttribute("uLogined&quo
64、t;);</p><p> if (u != null && u.trim().equals("true")) </p><p> ulog = true;</p><p> 若ulog為false,表明沒有經(jīng)過登陸與否的驗證,則只能已游客的生份瀏覽和搜索帖子如果想留言和發(fā)表帖子,只有登錄或注冊用戶才可以。</p>
65、;<p> 若ulog為true則表名用戶已經(jīng)登陸,而且可以用session得到用戶名(String)session.getAttribute("name"),顯示在主頁上。</p><p> 如果用戶還不是會員則提示用戶進行注冊,用戶提交信息之后,系統(tǒng)開始判斷用戶的注冊信息是否有效,首先是用戶名是否為空,用戶輸入的兩次密碼是否一致,然后依次往后判斷用戶所填寫的各項信息是否符
66、合要求,直到所有信息均正確無誤,系統(tǒng)將該用戶注冊信息寫入會員表即user表,并提示用戶注冊成功。就可以進行其它有效的操作了。</p><p> 系統(tǒng)對用戶的注冊信息的驗證實現(xiàn)如下:</p><p> 首先是用正則表達式對表單的控制</p><p> 表4.3 正則表達式對表單的控制</p><p> 表4.4 用戶注冊代碼實現(xiàn)<
67、/p><p> 4.2.3分頁顯示的功能實現(xiàn)</p><p> 這里是分頁功能的實現(xiàn),這里把每頁幾條記錄設(shè)為一個常量便于修改。</p><p> 表4.5 分頁顯示代碼實現(xiàn)</p><p> 4.2.4 發(fā)表與回復(fù)功能模塊實現(xiàn)</p><p> 點擊發(fā)表主題進入post.jsp,填寫標題、作者與內(nèi)容提交到自身頁面
68、</p><p> 表4.6 發(fā)表帖子功能代碼實現(xiàn)</p><p><b> 回復(fù)功能關(guān)鍵代碼</b></p><p> 表 4.7 回復(fù)功能實現(xiàn)</p><p> 這里是javscript實現(xiàn)五秒之后自動跳轉(zhuǎn)</p><p> 表4.8 Javascript 實現(xiàn)延遲跳轉(zhuǎn)</p&
69、gt;<p> 4.2.5后臺管理模塊的實現(xiàn)</p><p> 網(wǎng)上論壇系統(tǒng)除了能夠讓用戶實現(xiàn)前臺的瀏覽和回復(fù)等操作之外,還必須能夠使管理人員能夠?qū)ο到y(tǒng)的各種信息進行維護,比如帖子的增加、刪除、修改,會員的搜索,刪除等等。管理功能是網(wǎng)上論壇系統(tǒng)相當重要的一部分功能。</p><p> 管理員可以通過主頁面進入系統(tǒng)后臺進行維護,點擊之后,首要的就是進行身份驗證,輸入正確的
70、賬號,密碼之后,方能進入。出于安全性考慮,管理員賬號應(yīng)盡量少分配,密碼也要盡量復(fù)雜,經(jīng)常更換。</p><p> 進入之后系統(tǒng)管理的主頁面采用了框架結(jié)構(gòu),左邊是一個菜單,右邊顯示具體信息。</p><p> 管理的主要功能有帖子的查詢、更新,刪除等,用戶管理,主要就是查詢用戶,刪除用戶。</p><p> 這一部分的實現(xiàn)也沒有新的方法,使用的依然是一些SQL語
71、句來對相關(guān)數(shù)據(jù)進行查詢和刪除,修改。</p><p> 網(wǎng)上論壇作為一個在網(wǎng)上交流思想的論壇系統(tǒng),如何能讓用戶以最快的速度找到自己希望看到的帖子,也是需要非常重視的一個問題,此時搜索引擎也就必不可少了。本論壇系統(tǒng)也做了一個小模塊,以供用戶進行一些模糊查找,用戶不必輸入全部名稱,只需輸入一些關(guān)鍵詞,系統(tǒng)就可以將符合該查詢條件的所有帖子信息以網(wǎng)頁形式返回給用戶。該搜索功能在JSP頁面中實現(xiàn)的關(guān)鍵代碼為:</p
72、><p> 表4.9搜索功能代碼實現(xiàn)</p><p> 修改功能實現(xiàn)的關(guān)鍵代碼為:</p><p> 表4.10修改功能代碼實現(xiàn)</p><p> 刪除功能實現(xiàn)的關(guān)鍵代碼為</p><p> 表4.11刪除功能代碼實現(xiàn)</p><p><b> 系統(tǒng)測試</b>&l
73、t;/p><p> 系統(tǒng)完成之后,對各個模塊的功能進行了詳細的測試,輸入數(shù)據(jù)和預(yù)測輸出數(shù)據(jù)相比,發(fā)現(xiàn)了一些問題。主要是在查詢過程中預(yù)計查詢結(jié)果和實際結(jié)果不一致,有時候達不到目的,對數(shù)據(jù)庫的操作表之間的關(guān)聯(lián)考慮得不夠周到,因此往往會出現(xiàn)一些小的錯誤。需要靠一步步的查找解決。各個模塊組裝完成后,又會出現(xiàn)一些問題。所以很容易造成數(shù)據(jù)混亂,必須對相應(yīng)的數(shù)據(jù)關(guān)系理清楚,一些關(guān)鍵查詢統(tǒng)計的SQL語句必須反復(fù)斟酌才能放在程序中使
74、用。 </p><p> 先注冊一個用戶名為USER的用戶(先前數(shù)據(jù)庫中無此用戶名的),注冊成功后,再注冊一個用戶名為USER的用戶,預(yù)期結(jié)果應(yīng)該是系統(tǒng)提示該用戶名已經(jīng)存在。填寫完整的資料后點擊注冊,此時系統(tǒng)按照預(yù)期結(jié)果提示該用戶名已經(jīng)被注冊了。測試結(jié)果,系統(tǒng)正常按照設(shè)計模式運行。將用戶名改為:幾個空格然后其他的不變提交之后我們會發(fā)現(xiàn)系統(tǒng)返回成功頁面,但問題是用戶名什么也沒有,空格也被作為合法的用戶名,這在實際
75、應(yīng)用中是不允許的,我們需要對其命名規(guī)則進行定義,具體修改請參看前面正則表達式對表單的控制。同樣的郵箱也存在規(guī)則未定義的問題,需要對其加以定義。</p><p> 在測試過程中,我經(jīng)過測試,排除了系統(tǒng)的大部分錯誤。當然排除所有錯誤是不太可能的,我想應(yīng)該還有些不易檢測到的錯誤還沒有被發(fā)現(xiàn),需要在使用的過程中進一步的完善,數(shù)據(jù)庫的加密是一個重要的概念,在實際的應(yīng)用過程中是一個尚待解決的問題,應(yīng)該做好數(shù)據(jù)庫的完善工作,
76、特別是備份和安全工作;另一方面由于時間倉促難免有錯誤和不完善的地方,希望老師能夠幫我指點和糾正。</p><p><b> 總 結(jié)</b></p><p> 完成這次設(shè)計任務(wù)總共用了六個星期時間,前三個星期用來收集資料、學(xué)習(xí)要用到的各項開發(fā)技術(shù)、進行論壇的系統(tǒng)分析,中間兩個星期用來設(shè)計系統(tǒng),后一個星期用來測試及修改。論文的撰寫一直貫穿其中。</p>
77、<p> 通過這次畢業(yè)設(shè)計,我從中學(xué)到了許多新的知識,而且通過這次畢業(yè)設(shè)計,培養(yǎng)了我綜合多門學(xué)科中的知識、迅速規(guī)劃并開發(fā)出目標系統(tǒng)的能力,以及編程能力也有了很大的提高。另外也有許多心得體會,所謂系統(tǒng)開發(fā)如人生百味,酸甜苦辣皆有之。</p><p> 嚴格按工程的方法來設(shè)計系統(tǒng)相當重要,不能認為基于Web的數(shù)據(jù)庫管理的BBS系統(tǒng)很小,可以無需花太多的時間來做系統(tǒng)分析,甚至可以無需經(jīng)過系統(tǒng)定義而直接進入
78、系統(tǒng)編碼階段。這種想法很天真,最小的系統(tǒng),你若想保證質(zhì)量,把系統(tǒng)做得越可靠越有效率功能越強,應(yīng)該考慮的方方面面就越多越復(fù)雜。系統(tǒng)分析過于簡單,系統(tǒng)定義過于抽象,則在系統(tǒng)設(shè)計與編碼階段遇到的困難就越多,特別是其中不得不做一些功能性甚至系統(tǒng)結(jié)構(gòu)性方面的變動,將面對許多重復(fù)性的工作。在系統(tǒng)開發(fā)過程中重復(fù)工作過多,將會極大地影響系統(tǒng)開發(fā)的積極性,從而影響整個系統(tǒng)的質(zhì)量。在這一點上,我體會尤深,我花了三個星期,即接近系統(tǒng)開發(fā)一半的時間用在系統(tǒng)分析
79、與系統(tǒng)定義上,也就是在開始浪費了一周多的時間,即邊編碼邊分析,邊分析邊編碼,后來越來越亂越來越復(fù)雜,不得不重新考慮系統(tǒng)開發(fā)計劃的合理性??傊?,在這一點上,我的體會是,系統(tǒng)分析越充分,系統(tǒng)定義越具體,那么后續(xù)的系統(tǒng)設(shè)計與開發(fā)工作就越有效率,且系統(tǒng)的質(zhì)量也越有保障。</p><p> 回顧這一個半月的系統(tǒng)開發(fā)工作,總結(jié)起來那就是,軟件的開發(fā)是相當辛苦的,但成功以后的喜悅也是非常美妙的,而且我發(fā)現(xiàn),其中你投入的心血越
80、多,成功以后你所獲得的快樂與充實感也更多更強。難道人越辛苦就會越幸??鞓穯幔繉?,軟件系統(tǒng)開發(fā)就是這樣!</p><p><b> 參考文獻</b></p><p><b> 主要參考資料:</b></p><p> [1] 武延軍,黃飛躍. 精通JSP編程技術(shù)[M]. 北京:人民郵電出版社,2001:126-178.
81、</p><p> [2] 柏亞軍. JSP編程基礎(chǔ)及應(yīng)用實例集錦[M].北京:人民郵電出版社,2001:41-82.</p><p> [3] 清宏計算機工作室.JSP編程技巧[M].北京:機械工業(yè)出版社,2000 :32-39.</p><p> [4] 周影 .網(wǎng)絡(luò)編程語言JSP實例教程[M].北京:電子工業(yè)出版社,2003:17-32.</p&g
82、t;<p> [5] 陳海山.深入Java Servlet 網(wǎng)絡(luò)編程[M].北京:清華大學(xué)出版社,2002 :55-62.</p><p> [6] Donny.JSP與網(wǎng)站開發(fā)編程實戰(zhàn)[M].北京:科學(xué)出版社 ,2001:22-53.</p><p> [7] Steven Holzner.Java技術(shù)內(nèi)幕[M].北京:機械工業(yè)出版社,2002 : 22-25.<
83、;/p><p> [8] Phil Hanna .JSP技術(shù)大全[M].北京:機械工業(yè)出版社,2002 : 222-223.</p><p> [9] Karl Moss. Java Servlet開發(fā)人員指南[M].北京:清華大學(xué)出版社,2002:45-67.</p><p> [10] 李存珠,李宣東. 軟件工程概論[M].南京大學(xué)計算機系出版, 2001:3
84、0-87.</p><p><b> 致 謝</b></p><p> 從十二月份接受課題到現(xiàn)在完成畢業(yè)設(shè)計論文,衷心的感謝我的導(dǎo)師xx老師給予了精心的指導(dǎo)和熱情的幫助,尤其在課題設(shè)計的前期準備階段和本人的系統(tǒng)設(shè)計階段,導(dǎo)師提出許多寶貴的設(shè)計意見,在最后的測試修改階段老師在百忙之中抽出時間為我們提供了必要的幫助,這樣使得我們得以順利的完成畢業(yè)設(shè)計工作,在短暫的幾個
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- bbs畢業(yè)論文----網(wǎng)絡(luò)bbs論壇系統(tǒng)
- 畢業(yè)論文——bbs論壇系統(tǒng)
- 計算機系bbs論壇畢業(yè)設(shè)計
- bbs論壇系統(tǒng)_畢業(yè)論文_完整
- 網(wǎng)絡(luò)bbs論壇系統(tǒng)畢業(yè)論文
- bbs論壇畢業(yè)論文
- bbs論壇畢業(yè)論文
- 基于jsp的bbs論壇管理系統(tǒng) 畢業(yè)論文
- 計算機黨務(wù)管理系統(tǒng)畢業(yè)論文
- 計算機畢業(yè)論文--網(wǎng)吧管理系統(tǒng)
- 畢業(yè)論文bbs論壇設(shè)計論文
- 計算機畢業(yè)論文--- 超市管理系統(tǒng)
- 計算機畢業(yè)論文--網(wǎng)吧管理系統(tǒng)
- 陽光菲亞斯bbs論壇系統(tǒng)【畢業(yè)論文】
- 計算機信息管理畢業(yè)論文---計算機圖書管理系統(tǒng)
- BBS論壇畢業(yè)論文(1).doc
- 畢業(yè)論文范文——bbs論壇
- 計算機圖書管理系統(tǒng)畢業(yè)論文
- 計算機圖書管理系統(tǒng)畢業(yè)論文
- 計算機畢業(yè)論文——人事管理系統(tǒng)
評論
0/150
提交評論