基于Struts的在線論壇_第1頁
基于Struts的在線論壇_第2頁
基于Struts的在線論壇_第3頁
基于Struts的在線論壇_第4頁
基于Struts的在線論壇_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第第頁共40頁1引言1.1課題目的隨著目前科技的不斷發(fā)展和網(wǎng)絡(luò)的逐步普及,Internet已成為人們溝通的重要橋梁。尤其是在線論壇的出現(xiàn)更是呈現(xiàn)出一種蓬勃發(fā)展的趨態(tài)。本在線論壇系統(tǒng)就是為了適應(yīng)這樣一種發(fā)展趨勢、方便人們的溝通而設(shè)計(jì)的。它為人們提供了一個(gè)可以自由交流溝通的平臺,在該系統(tǒng)中可先通過注冊成為會員,即可發(fā)表帖子來說出自己的觀點(diǎn),等待別的用戶的加入即回帖來達(dá)到溝通目的。而且,由于論壇系統(tǒng)的參與人眾多,因此各方面的話題都不乏熱心者。在這里,打破了交流空間和時(shí)間限制,所有人都不用害怕暴露自己真實(shí)的社會身份,每個(gè)人都處于對等位置,可以就任何問題進(jìn)行討論。系統(tǒng)力求做到提供友好的人機(jī)交互界面,操作簡便,安全可靠。本課題從理論和實(shí)踐兩個(gè)角度出發(fā),通過設(shè)計(jì)和實(shí)現(xiàn)一個(gè)基于Struts的在線論壇,對目前流行的在線論壇以及所涉及的Struts框架等進(jìn)行了較為深入的探討。系統(tǒng)力求做到提供友好的人機(jī)交互界面,操作簡便,安全可靠。本課題將四年所學(xué)的專業(yè)知識融入到實(shí)際的應(yīng)用中,在實(shí)際運(yùn)用中學(xué)習(xí)和掌握J(rèn)ava程序設(shè)計(jì)語言的基礎(chǔ)內(nèi)容、基本技能和方法,同時(shí)培養(yǎng)學(xué)生進(jìn)行分析問題、解決問題的能力;培養(yǎng)學(xué)生進(jìn)行設(shè)計(jì)分析、設(shè)計(jì)方法、設(shè)計(jì)操作與測試、設(shè)計(jì)過程的觀察、理解和歸納能力的提高[1]?,F(xiàn)代科學(xué)技術(shù)的發(fā)展,改變了人類的生活[2],作為新世紀(jì)的大學(xué)生,應(yīng)該站在時(shí)代發(fā)展的前沿,掌握現(xiàn)代科學(xué)技術(shù)知識,以適應(yīng)社會的發(fā)展,能夠獨(dú)立完成面臨的任務(wù),做一名有創(chuàng)新意識的新型人才[3]。1.2在線論壇的發(fā)展現(xiàn)狀論壇又名網(wǎng)絡(luò)論壇BBS,全稱為BulletinBoardSystem(電子公告板)或者BulletinBoardService(公告板服務(wù)),是Internet上的一種電子信息服務(wù)系統(tǒng)。它提供一塊公共電子白板,每個(gè)用戶都可以在上面書寫,可發(fā)布信息或提出看法。它是一種交互性強(qiáng),內(nèi)容豐富而及時(shí)的Internet電子信息服務(wù)系統(tǒng)。用戶在BBS站點(diǎn)上可以獲得各種信息服務(wù),發(fā)布信息,進(jìn)行討論,聊天等等。另外論壇不同于一般的一些大型門戶的新聞網(wǎng)站,論壇是把每一篇文章逐一排列起來供網(wǎng)友觀看和回復(fù)。參照美國學(xué)者RD·維莫爾(R·D·Wimmer)和J·R·多米尼克(J·R·Dominick)針對傳播媒介的研究提出的四個(gè)階段模式,運(yùn)用主題元分析的方法對目前我國國內(nèi)BBS研究的現(xiàn)狀進(jìn)行了分析后發(fā)現(xiàn),目前國內(nèi)BBS研究現(xiàn)狀可以劃分為以下四個(gè)階段[4]:第一階段(28.7%),有關(guān)BBS自身的初步研究,包括歷史和哲學(xué)問題、技術(shù)問題和應(yīng)用,功用和服務(wù)以及政策法律等問題。第二階段(41.9%),BBS的使用和用戶,包括用戶的認(rèn)知、感受和調(diào)查,使用主體以及如何使用,BBS提供了什么,它的教育和政治等其他用途。第三階段(16.9%),BBS的影響,包括它對人際關(guān)系和人們生活的改變、因之產(chǎn)生的一些新的社會和文化問題及其對傳統(tǒng)媒介的沖擊。第四階段(12.5%),BBS的改進(jìn)和研究,包括如何發(fā)展利用BBS及對BBS產(chǎn)生的相關(guān)問題的專業(yè)深入研究和系統(tǒng)化、綜合性分析。任何一個(gè)媒介的使用和應(yīng)用都是首先從對它的初步認(rèn)知開始的,特別是互聯(lián)網(wǎng)這一出現(xiàn)不久的新媒介,其發(fā)展速度和影響都體現(xiàn)出以往傳統(tǒng)媒介無以匹敵的優(yōu)勢[5],BBS是這一新媒介的重要組成部分。大約是從1991年開始,國內(nèi)開始了第一個(gè)BBS站[6]。經(jīng)過長時(shí)間的發(fā)展,直到1995年,隨著計(jì)算機(jī)及其外設(shè)的大幅降價(jià),BBS才逐漸被人們所認(rèn)識。2系統(tǒng)概述2.1相關(guān)技術(shù)簡介在開發(fā)在線論壇系統(tǒng)中,考慮到系統(tǒng)的開發(fā)時(shí)間,系統(tǒng)的可用性,采用了Struts技術(shù),為了減輕負(fù)載采用jsp動態(tài)網(wǎng)頁技術(shù)。Struts是目前Web開發(fā)中比較成熟的一種框架,本文闡述了基于MVC模型的Web應(yīng)用軟件開發(fā)框架struts的體系結(jié)構(gòu)及主要組成組件,并結(jié)合一個(gè)實(shí)例討論如何設(shè)計(jì)基于struts框架的應(yīng)用,同時(shí)也分析了使用struts框架開發(fā)web應(yīng)用的優(yōu)勢。比爾蓋茨曾說:"Java是最卓越的程序設(shè)計(jì)語言"[7]。2.1.1Struts技術(shù)簡介Struts是apache組織jakarta項(xiàng)目的一個(gè)子項(xiàng)目,用以改善web系統(tǒng)的結(jié)構(gòu)。它是一個(gè)基于Sun

J2EE平臺的MVC框架,主要是采用Servlet和JSP技術(shù)來實(shí)現(xiàn)的。struts框架具有組件的模塊化,靈活性和重用性的優(yōu)點(diǎn),同時(shí)簡化了基于MVC的web應(yīng)用程序的開發(fā)[8]。Struts和MVC模式緊密相關(guān)[9]:

(1)模型(Model),本質(zhì)上來說在Struts中Model是一個(gè)Action類,開發(fā)者通過其實(shí)現(xiàn)商業(yè)邏輯,同時(shí)用戶請求通過控制器(Controller)向Action的轉(zhuǎn)發(fā)過程是基于由struts-config.xml文件描述的配置信息的;

(2)視圖(View),View是由與控制器Servlet配合工作的一整套JSP定制標(biāo)簽庫構(gòu)成,利用她們我們可以快速建立應(yīng)用系統(tǒng)的界面;(3)控制器(Controller),本質(zhì)上是一個(gè)Servlet,將客戶端請求轉(zhuǎn)發(fā)到Action類;一堆用來做XML文件解析的工具包,Struts是用XML來描述如何自動產(chǎn)生一些JavaBean的屬性的,此外Struts還利用XML來描述在國際化應(yīng)用中的用戶提示信息的(這樣就實(shí)現(xiàn)了應(yīng)用系統(tǒng)的多語言支持)。2.1.2JSP技術(shù)簡介JSP(JavaServerPages)是由SunMicrosystems公司倡導(dǎo),許多公司參與一起建立的一種動態(tài)頁面技術(shù)標(biāo)準(zhǔn),其在動態(tài)網(wǎng)頁的建設(shè)中由其強(qiáng)大而特別的功能,它主要要用于創(chuàng)建支持跨平臺Web服務(wù)器的動態(tài)網(wǎng)頁[10]。JSP可與微軟的ActiveServerPages(ASP)相媲美,但是JSP使用的是類似與HTML的標(biāo)記和Java代碼片斷而不是用VBScript。當(dāng)人們使用不提供ASP本地支持的Web服務(wù)器(例如Apache或者Netscape服務(wù)器)時(shí),你就可以考慮使用JSP了。JavaServerPages技術(shù)可以讓W(xué)eb開發(fā)人員和設(shè)計(jì)人員非常容易的創(chuàng)建和維護(hù)動態(tài)網(wǎng)頁,特別是目前的商業(yè)系統(tǒng)。作為Java技術(shù)的一部分,JSP能夠快速開發(fā)基于Web,獨(dú)立參與平臺的應(yīng)用程序。JSP把用戶界面從系統(tǒng)內(nèi)容中分離開來,使得設(shè)計(jì)人員能夠在不改變底層動態(tài)內(nèi)容的前提下改變整個(gè)網(wǎng)頁布局[11]。在JSP網(wǎng)頁中,要把用戶界面和應(yīng)用程序分開可以考慮在網(wǎng)頁設(shè)計(jì)人員和開發(fā)人員之間執(zhí)行一個(gè)非常方便的授權(quán)任務(wù)。它也允許開發(fā)人員去建立靈活的代碼,從而非常容易地進(jìn)行更新和重復(fù)利用。由于JSP網(wǎng)頁能夠根據(jù)需要自動進(jìn)行編譯,Web設(shè)計(jì)人員無需重新編譯應(yīng)用程序邏輯就可以改變表述代碼。這也就是JSP與JavaServed相比成為一種可以更靈活生成動態(tài)Web內(nèi)容的方法[12]。事實(shí)證明,JavaServed是一種開發(fā)Web應(yīng)用的理想架構(gòu)。JSP以Served技術(shù)為基礎(chǔ),又在許多方面做了改進(jìn)。利用跨平臺運(yùn)行的JavaBeans組建,JSP為分離處理邏輯與顯示樣式提供了卓越的解決方案。JSP必將成為其他動態(tài)網(wǎng)頁技術(shù)的有力競爭者。在開發(fā)論壇系統(tǒng)中,運(yùn)用JSP動態(tài)網(wǎng)頁技術(shù),大大減少了網(wǎng)絡(luò)服務(wù)器的負(fù)擔(dān),大大的提高了論壇系統(tǒng)的性能,也有利于日后對系統(tǒng)的維護(hù)。圖2.1JSP文件執(zhí)行圖2.1.3MYSQL數(shù)據(jù)庫簡介本論壇系統(tǒng)采用了MySQL數(shù)據(jù)庫,其中MySQL數(shù)據(jù)庫是一個(gè)小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),其被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。由于體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫。2.1.4MyEclipse簡介MyEclipse企業(yè)級工作平臺(MyEclipseEnterpriseWorkbench,簡稱MyEclipse)是對EclipseIDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫和JavaEE的開發(fā)、發(fā)布,以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測試和發(fā)布功能,完整支持HTML,Struts,JSF,CSS,Javascript,SQL,Hibernate。同時(shí),MyEclipse擁有多種快捷鍵,令程序的開發(fā)更易進(jìn)行。在結(jié)構(gòu)上,MyEclipse的特征可以被分為7類:(1)JavaEE模型(2)Web開發(fā)工具(3)EJB開發(fā)工具(4)應(yīng)用程序服務(wù)器的連接器(5)JavaEE項(xiàng)目部署服務(wù)(6)數(shù)據(jù)庫服務(wù)(7)MyEclipse整合幫助對于以上每一種功能上的類別,在Eclipse中都有相應(yīng)的功能部件,并通過一系列的插件來實(shí)現(xiàn)它們。MyEclipse結(jié)構(gòu)上的這種模塊化,可以讓我們在不影響其他模塊的情況下,對任一模塊進(jìn)行單獨(dú)的擴(kuò)展和升級。2.2系統(tǒng)開發(fā)模式介紹目前,在大多數(shù)B/S(Browser/Server)結(jié)構(gòu)的Web應(yīng)用中,瀏覽器直接通過HTML或者JSP的形式與用戶交互,響應(yīng)用戶的請求。雖然很直觀,但是大多數(shù)管理信息系統(tǒng)操作的數(shù)據(jù)量都是驚人的,隨著代碼的增多會使JSP頁面臃腫不堪,Web服務(wù)器的負(fù)荷過重。因此,在中間層上采用基于模型視圖控制器(MVC,Model-View-Controller)的設(shè)計(jì)模式。MVC之間的關(guān)系如圖2.2所示,Model層用來實(shí)現(xiàn)業(yè)務(wù)邏輯,View層用來顯示用戶界面,Controller層主要負(fù)責(zé)View層和Model層之間的控制關(guān)系。這種設(shè)計(jì)模式很好地實(shí)現(xiàn)了數(shù)據(jù)層與表示層的分離,使開發(fā)工作更加容易和迅速進(jìn)行[13]。圖2.2MVC之間的關(guān)系圖本次論壇系統(tǒng)為基于Struts的在線論壇系統(tǒng),Struts2是一個(gè)基于MVC的web框架。作為一個(gè)可復(fù)用的框架,是由一些抽象類,類,接口或者實(shí)例間的協(xié)作關(guān)系組成。 Struts2是Struts的下一代產(chǎn)品,是在struts1和WebWork的技術(shù)基礎(chǔ)上進(jìn)行了合并的全新的Struts2框架。其全新的Struts2的體系結(jié)構(gòu)與Struts1的體系結(jié)構(gòu)差別巨大。Struts2以WebWork為核心,采用攔截器的機(jī)制來處理用戶的請求,這樣的設(shè)計(jì)也使得業(yè)務(wù)邏輯控制器能夠與ServletAPI完全脫離開,所以Struts2可以理解為WebWork的更新產(chǎn)品[14]。2.3系統(tǒng)服務(wù)器配置 2.3.1JDK的安裝和配置JDK是JavaDevelopmentKit的縮寫,是SunMicrosystems針對Java開發(fā)員的產(chǎn)品。沒有JDK的話,則無法安裝或者運(yùn)行java程序。此次在線論壇的開發(fā)使用版本為jdk1.6.0_26,下載安裝完成后,需要配置jdk環(huán)境變量。如下圖2.3所示為此次在線論壇系統(tǒng)的JDK環(huán)境配置界面。2.3.2Tomcat的安裝和配置關(guān)于tomcat的安裝可以到上去下載,這是一個(gè)完全免費(fèi)的優(yōu)秀軟件,安裝之前要保證本機(jī)已經(jīng)安裝JDK環(huán)境[15]。在Tomcat的安裝目錄下bin子目錄中,有一些批處理文件(以.bat作為后綴名的文件),其中的startup.bat就是啟動Tomcat的腳本文件,用鼠標(biāo)雙擊這個(gè)文件,將會看到信息。在瀏覽器地址欄中輸入http://localhost:8888/,如果出現(xiàn)如圖界面則說明安裝成功即可以進(jìn)行配置配置,tomcat首先要修改端口號,在conf目錄下有個(gè)叫server.xml將端口號修改為了8888,然后建立虛擬目錄配置調(diào)試。圖2.3tomcat配置成功界面3系統(tǒng)需求分析3.1系統(tǒng)功能需求對于一個(gè)系統(tǒng)的開發(fā),首先需要對該系統(tǒng)的功能框架等進(jìn)行一個(gè)基本的需求分析。首先需要確定系統(tǒng)所要采用的框架以及系統(tǒng)具備哪些功能,這些都需要多多參考一些比較成功的BBS論壇,學(xué)習(xí)采納優(yōu)秀的經(jīng)驗(yàn)。經(jīng)過對知名論壇的研究參考,我認(rèn)為既然論壇系統(tǒng)用于在互聯(lián)網(wǎng)上為人們提供一個(gè)信息發(fā)布或信息交流的場所,那么它應(yīng)具備以下功能:首先在線論壇系統(tǒng)分為前臺交流和后臺管理兩大部分功能。前臺主要功能包括:用戶注冊登錄功能,發(fā)表主題功能,回復(fù)帖子功能,查看帖子功能。其中為了讓有不同目的趨向的用戶可以清楚的找到自己感興趣的主題,以及相同興趣的用戶可以更方便的交流,我將系統(tǒng)設(shè)計(jì)成了由多個(gè)專區(qū)組成的論壇,這樣極大的方便了用戶,也是界面友好性的一個(gè)體現(xiàn)。后臺管理的部分包括:管理員的登陸,管理員的注銷,專區(qū)的管理,用戶的管理,主題的管理以及回復(fù)信息的管理。專區(qū)的管理包括對專區(qū)版主的設(shè)定、撤銷,對專區(qū)板塊的增加、修改、刪除。用戶的管理包括對用戶的刪除、用戶級別的設(shè)定和修改。主題及回復(fù)信息的管理也包括了常見的修改、刪除。對于貼子查看、發(fā)表貼子以及回復(fù)貼子這類頻繁發(fā)生的系統(tǒng)操作,要采取適當(dāng)?shù)募夹g(shù)優(yōu)化這類數(shù)據(jù)操作,以提高數(shù)據(jù)存取效率。通過這些功能極大的方便了用戶的發(fā)言、查找,同時(shí)也將管理員的工作簡單化、有效化,使管理員能過更方便的管理和監(jiān)督論壇,保證了論壇的安全運(yùn)行。3.2系統(tǒng)性能需求考慮到論壇系統(tǒng)使用的特殊性需要滿足以下要求:(1)時(shí)間特性論壇的數(shù)據(jù)庫較小,所以程序在響應(yīng)時(shí)間,數(shù)據(jù)更新處理時(shí)間上性能是比較突出的。由于數(shù)據(jù)量相對較少,故在數(shù)據(jù)傳輸時(shí)間和系統(tǒng)運(yùn)行時(shí)間上表現(xiàn)的較讓人滿意。(2)通用性由于用戶的操作系統(tǒng)不盡相同,這就要求考慮各平臺之間的異性,而論壇所采用的基于B/S的結(jié)構(gòu)就很好的解決了這個(gè)問題,用戶端只需要有瀏覽器就可以使用論壇系統(tǒng)。(3)輸入輸出要求本系統(tǒng)應(yīng)能夠?qū)Σ煌暾臄?shù)據(jù)進(jìn)行校驗(yàn),保證數(shù)據(jù)的完整性和一致性,輸出能滿足用戶的需求。3.3系統(tǒng)的開發(fā)環(huán)境3.3.1硬件環(huán)境CPU:Intelcorei31.8GHz以上內(nèi)存:1GB及以上硬盤空間:120GB及以上3.3.2軟件環(huán)境操作系統(tǒng):WindowsXP或以上版本瀏覽器:InternetExplorer9.0或其他瀏覽器數(shù)據(jù)庫:Mysql6.0或以上版本服務(wù)器:Tomcat6.0或以上版本4系統(tǒng)總體設(shè)計(jì)4.1功能結(jié)構(gòu)設(shè)計(jì)根據(jù)需求分析,可將在線論壇系統(tǒng)分為兩大模塊:前臺模塊和后臺模塊。前臺功能模塊主要包括3部分:登錄模塊:用戶在前臺可以注冊、登錄;瀏覽模塊:用戶可以瀏覽主題帖列表、查看帖子;發(fā)帖回帖模塊:用戶可以發(fā)帖、回帖、編輯自己發(fā)布的帖子。后臺模塊都是與管理員相關(guān),也包括3部分:論壇設(shè)置模塊:管理員可以設(shè)置論壇參數(shù);管理版塊模塊:創(chuàng)建、修改和刪除版塊;管理用戶模塊:添加、刪除和設(shè)置權(quán)限。論壇的功能結(jié)構(gòu)模塊如圖4.1所示:BBS系統(tǒng)BBS系統(tǒng)前臺功能后臺管理用戶登入用戶注冊用戶發(fā)帖瀏覽帖子用戶回帖欄目管理專區(qū)管理回帖管理用戶管理圖4.1論壇的功能結(jié)構(gòu)圖4.2功能模塊介紹在本次的在線論壇系統(tǒng)中有兩種用戶:普通用戶和系統(tǒng)管理員。在論壇中的版主權(quán)限,暫時(shí)劃分給管理員。4.2.1前臺功能模塊(1)注冊登錄因?yàn)檎搲奶厥庑砸约熬W(wǎng)絡(luò)的法律薄弱性,在本系統(tǒng)中采用了無匿名登錄模式,用戶想要對頁面進(jìn)行操作則必須先登錄,未登錄的用戶對頁面進(jìn)行操作,系統(tǒng)將不對其給與運(yùn)行同時(shí)提示用戶必須先注冊。(2)瀏覽帖子瀏覽帖子版塊列表選擇某版塊,瀏覽其下的主題貼列表,查看帖子內(nèi)容。這些行為是用戶讀取論壇的版塊及其帖子的相關(guān)信息,設(shè)計(jì)成瀏覽版塊。(3)發(fā)帖回帖本模塊中用戶可以發(fā)表新帖子,也可以回復(fù)已有的帖子,同時(shí)可以編制自己寫的帖子內(nèi)容。這些行為是用戶參與論壇討論,發(fā)表自己的見解,已達(dá)到溝通交流的目的,設(shè)計(jì)為發(fā)貼回帖模塊。會員會員選擇專區(qū)發(fā)布主題選擇瀏覽主題發(fā)布回復(fù)信息提交圖4.2普通會員的操作流程4.2.2后臺管理模塊對于系統(tǒng)管理員,需要負(fù)責(zé)整個(gè)論壇的正常運(yùn)轉(zhuǎn),因此它需要設(shè)計(jì)管理功能模塊,可以歸納為如下行為:具備注冊用戶的所有功能,因?yàn)楣芾韱T也是論壇用戶,可以參與論壇中的討論。管理員的操作流程如下圖4.3所示。(1)管理帖子管理員對論壇的帖子有監(jiān)督的權(quán)利,好的帖子要獎勵,搗亂的帖子要刪除,轉(zhuǎn)移發(fā)錯(cuò)版塊的帖子,這些行為都是針對帖子的操作,設(shè)計(jì)成管理帖子模塊。(2)管理版塊論壇中的版塊,需要管理員進(jìn)行創(chuàng)建,并由管理員管理版塊信息,這些針對版塊的操作,設(shè)計(jì)成管理版塊模塊。(3)管理用戶用戶注冊成功后,需要管理員賦予權(quán)限,才能使用論壇的相關(guān)功能。同時(shí),管理員可以自己添加,刪除用戶,這些針對用戶信息的操作,設(shè)計(jì)成管理用戶模塊。管理員管理員版塊管理帖子管理用戶管理添加版塊選擇版塊刪除版塊顯示所有主題顯示所有用戶更換版主刪除帖子刪除用戶修改用戶權(quán)限搜索用戶圖4.3管理員操作流程圖4.2.3前臺模塊與后臺模塊的關(guān)聯(lián)對于論壇系統(tǒng)來說,聯(lián)系各個(gè)模塊的主線是使用者的權(quán)限,用戶能使用論壇的哪些功能是由用戶權(quán)限決定的,論壇的每個(gè)功能都與相關(guān)的用戶權(quán)限對應(yīng)。例如,注冊用戶具有瀏覽帖子,發(fā)貼,回帖的權(quán)限,那么他就能使用論壇中的瀏覽,發(fā)貼,回帖功能。同一類用戶使用的功能模塊,是以使用者為中心連接起來的。另外,操作同一類事物的功能模塊,也有相關(guān)關(guān)系的。因此,瀏覽模塊與發(fā)帖回帖模塊,管理帖子模塊關(guān)聯(lián),是由論壇系統(tǒng)流程決定的。管理版塊模塊與瀏覽模塊關(guān)聯(lián),是由帖子與版塊的父子關(guān)系決定的,帖子依附與版塊,先有版塊,后有帖子,帖子必須發(fā)表在每個(gè)版塊中。用戶管理模塊與注冊登錄模塊關(guān)聯(lián),是由同一類對象——用戶決定的,注冊后獲得論壇的身份,成為用戶,所以的用戶需要接收管理員的管理,用戶登錄證明自己在論壇中的身份。根據(jù)在線論壇系統(tǒng)的入口不同,可將其分為前臺系統(tǒng)和后臺系統(tǒng)。前臺功能包括注冊登錄模塊,瀏覽模塊,發(fā)帖回帖模塊,管理帖子模塊;后臺功能包括管理用戶模塊,管理版塊模塊。同時(shí),不論前臺還是后臺模塊均具備注銷登錄功能。5數(shù)據(jù)庫的設(shè)計(jì)5.1數(shù)據(jù)庫的安裝數(shù)據(jù)庫論壇系統(tǒng)使用了MySQL,安裝界面如圖5.1所示。圖5.1MySQL的安裝界面根據(jù)程序提示一次安裝完成,完成后進(jìn)行MySQL的配置。配置界面如圖5.2所示:圖5.2MySQL配置界面安裝配置完成后,可以下載安裝一個(gè)MySQL的圖形化操控程序,方便數(shù)據(jù)庫的建立、管理及連接工作等。如圖5.3所示:圖5.3MySQL的圖形化界面5.2數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)根據(jù)系統(tǒng)的總體設(shè)計(jì),在線論壇網(wǎng)站的實(shí)體主要有:管理員實(shí)體,用戶信息實(shí)體,帖子實(shí)體。(1)管理員信息實(shí)體E-R圖,如圖5.4所示:管理員管理員用戶密碼權(quán)限圖5.4管理員信息實(shí)體E-R圖(2)用戶信息實(shí)體E-R圖,如圖5.5所示:用戶用戶密碼頭像用戶名圖5.5用戶信息實(shí)體E-R圖(3)論壇帖子實(shí)體E-R圖,如圖5.6所示:帖子帖子用戶內(nèi)容版塊主題圖5.6論壇帖子實(shí)體E-R圖5.3數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)通過對系統(tǒng)的需求和功能的分析我將系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)主要分為四個(gè)部分,包括板塊信息,用戶信息,主題信息以及回復(fù)信息。tb_topic用于存放會員發(fā)表的帖子信息。tb_user用于存放論壇用戶信息。tb_forum用于存放論壇類別板塊信息。tb_response用于存放會員回復(fù)的帖子信息。用戶信息表tb_user包括:用戶id,用戶名,真實(shí)姓名,用戶密碼,用戶性別,用戶郵箱,用戶QQ號,用戶權(quán)限,用戶頭像,E_mail,聯(lián)系地址等信息。建立數(shù)據(jù)庫表結(jié)構(gòu)如下表5.7所示:表5.7tb_user數(shù)據(jù)表字段描述類型空值長度id用戶idint否11username用戶名varchar否20password密碼varchar否20sex性別varchar否2email郵箱varchar否50oicqQQ號varchar是20signature簽名檔varchar是300grade用戶權(quán)限varchar是20lxdz聯(lián)系地址varchar是50tx用戶頭像varchar是30grzy個(gè)人主頁varchar是50realname真實(shí)姓名varchar是30論壇帖子信息表tb_topic包括:帖子編號,帖子標(biāo)題,帖子內(nèi)容,帖子作者,帖子發(fā)表時(shí)間,所屬板塊信息,作者發(fā)帖時(shí)的心情表情,發(fā)帖用戶的頭像等信息。建立數(shù)據(jù)庫表結(jié)構(gòu)如下表5.8所示:表5.8tb_topic數(shù)據(jù)表字段描述類型空值長度id帖子編號int否4title帖子標(biāo)題varchar否300content帖子內(nèi)容text是0author帖子作者varchar是20submittime發(fā)表時(shí)間timestamp否0forumid板塊idint否4xq發(fā)帖心情varchar是30rq用戶頭像int是4forumname板塊名字varchar否20論壇帖子回復(fù)信息表tb_response包括:回帖編號,帖子編號,帖子名稱,回帖標(biāo)題,回帖內(nèi)容,回帖子姓名,回帖時(shí)間,回帖用戶的心情狀態(tài)等信息。建立數(shù)據(jù)庫表結(jié)構(gòu)如下表5.9所示:表5.9tb_response數(shù)據(jù)表字段描述類型空值長度id回貼編號int否11topicid帖子編號int否4title回帖標(biāo)題varchar否300content回帖內(nèi)容text是0author回帖者姓名varchar否20submittime回帖時(shí)間timestamp是0xq回帖心情varchar否20topicname帖子名稱varchar是100論壇板塊信息表tb_forum包括:板塊編號,板塊名稱,版主,板塊創(chuàng)建時(shí)間等信息。建立數(shù)據(jù)庫表結(jié)構(gòu)如下表5.10所示:表5.10tb_forum數(shù)據(jù)表字段描述類型空值長度id版塊編號int否11forumname版塊名稱varchar否20manager版主varchar是100createtime版塊時(shí)間timestamp是05.4數(shù)據(jù)庫的連接(1)加載數(shù)據(jù)庫程序,并創(chuàng)建數(shù)據(jù)庫連接對象。在Java程序中,可以通過“Class.forName(“指定數(shù)據(jù)庫的驅(qū)動程序”)”方式來加載添加到開發(fā)環(huán)境中的驅(qū)動程序,通過DriverManager類創(chuàng)建數(shù)據(jù)庫連接對象Connection。DriverManager類作用于Java程序和JDBC驅(qū)動程序之間,用于檢查所加載的驅(qū)動程序是否可以建立連接,然后通過它的getConnection方法,根據(jù)數(shù)據(jù)庫的URL、用戶名和密碼,創(chuàng)建一個(gè)JDBCConnection對象。publicclassDatabase{ privatestaticDatabasedb; privateConnectioncon=null; privateStatementstate=null; privatePreparedStatementper=null; privateResultSetrs=null; privateCallableStatementcallstmt=null; publicstaticDatabasegetDatebase(){ db=newDatabase(); returndb; } privateDatabase(){ try{ Class.forName("com.mysql.jdbc.Driver"); con=DriverManager.getConnection( "jdbc:mysql://localhost:3306/db_bbs","root","123"); }catch(Exceptione){ System.out.println("數(shù)據(jù)庫連接異常"); e.printStackTrace(); } } publicvoidopenCon(){ try{ Class.forName("com.mysql.jdbc.Driver"); con=DriverManager.getConnection( "jdbc:mysql://localhost:3306/db_bbs","root","123"); }catch(Exceptione){ System.out.println("數(shù)據(jù)庫連接異常"); } }創(chuàng)建Statement對象:Statement類的主要是用于執(zhí)行靜態(tài)SQL語句并返回它所生成結(jié)果的對象,通過Connection對象的createStatement()方法可以創(chuàng)建一個(gè)Statement對象。publicResultSetopenStatement(Stringsql){ try{ getCon(); state=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); rs=state.executeQuery(sql); }catch(SQLExceptione){ System.out.println("創(chuàng)建Statement異常"); e.printStackTrace(); }finally{ returnrs; } }調(diào)用Statement對象的相關(guān)方法執(zhí)行相對應(yīng)的SQL語句:通過execuUpdate()方法用來數(shù)據(jù)的更新,包括插入和刪除等操作。publicbooleanopenUpateStatement(Stringsql){ booleanisSuccee=false; try{ getCon(); state=con.createStatement(); state.executeUpdate(sql); isSuccee=true; }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } returnisSuccee; }關(guān)閉數(shù)據(jù)庫連接:使用完數(shù)據(jù)庫或者不需要訪問數(shù)據(jù)庫時(shí),通過Connection的close()方法及時(shí)關(guān)閉數(shù)據(jù)連接。6前臺功能模塊的設(shè)計(jì)與實(shí)現(xiàn)6.1論壇主界面設(shè)計(jì)主頁面是論壇的門戶,所以主頁面的設(shè)計(jì)好壞直接影響到整個(gè)論壇的形象。論壇首頁所載的內(nèi)容有:論壇工具欄,包括登錄、注冊、發(fā)貼、幫助、管理員登錄、退出;論壇統(tǒng)計(jì)信息;論壇版面列表;論壇版權(quán)信息。論壇首頁如圖6.1所示:圖6.1在線論壇首頁界面對于論壇首頁的實(shí)現(xiàn)主界面為index.jsp,下圖是首頁的組成圖。論壇首頁頭部的歡迎信息和首頁底部的開發(fā)者信息在前臺每個(gè)網(wǎng)頁上都是一樣的,頁面在布局上基本一致。頁面結(jié)構(gòu)組成如下圖6.2所示:首頁首頁Index.jsp首頁歡迎用戶已登入top2.jsp用戶未登入top.jsp標(biāo)簽論壇專區(qū)信息論壇開發(fā)者信息footer.jsp圖6.2在線論壇首頁組成圖6.2用戶登錄注冊模塊設(shè)計(jì)6.2.1用戶登錄用戶進(jìn)入論壇后,若想發(fā)表帖子必須先登錄,如果沒有賬號可以先進(jìn)行注冊。點(diǎn)擊工具欄上的“登錄”按鈕,用戶則可進(jìn)入登錄與注冊界面,效果如圖6.3所示。圖6.3在線論壇注冊登錄界面該模塊在用戶登錄時(shí)要進(jìn)行用戶名和密碼的有效性檢驗(yàn),查詢用戶表,如果該用戶存在則讓他進(jìn)入主頁面,也就是前面介紹的論壇首頁;如果無法登錄成功則給予提示,用戶名不存在或者密碼錯(cuò)誤,則回到登錄頁面以便用戶再次輸入用戶名及密碼登錄。用戶登入信息請求通過<s:from>表單發(fā)送的dologin.action實(shí)現(xiàn),dologin.action根據(jù)struts.xml配置文件進(jìn)行頁面的跳轉(zhuǎn)。<s:from>的請求代碼如下:<s:formaction="dologin.action"id="loginForm"namespace="/"><s:textfieldid="name"name="login.username"size="13" maxlength="20"/><s:passwordid="password"name="login.password"size="13"maxlength="20"/><s:sumbit>提交</s:sumbit><s:reset>重置</sreset></s:form>Dologin.action登錄功能實(shí)現(xiàn)代碼如下:publicclassDoLoginextendsActionSupport{ privateLoginlogin=newLogin(); @Override publicStringexecute(){ if(LoginDAO.login(login.getUsername(),login.getPassword())){ ActionContext.getContext().getSession().put("name", login.getUsername()); ActionContext.getContext().getSession().put("islogin",1); returnsuccess; }else{ ActionContext.getContext().getSession().put("islogin",0); this.addFieldError("userlogin","你輸入的用戶名或密碼錯(cuò)誤,請重新輸入"); returnerror; } } publicLogingetLogin(){ returnlogin; } publicvoidsetLogin(Loginlogin){ this.login=login; }}在struts.xml中的配置代碼如下:<actionname="dologin"class="com.bbs.struts.action.DoLogin"> <resultname="success">index.jsp</result> <resultname="error">index.jsp</result></action><s:iftest="#==null"><!--怎么獲得Session中的值--> <%@includefile="top.jsp"%><!--請用戶登入--> </s:if> <s:else> <%@includefile="top2.jsp"%><!--用戶不必登入--></s:else>6.2.2用戶注冊如果用戶是首次訪問在線論壇,還沒有注冊,可以單擊登錄注冊界面的注冊按鈕進(jìn)入新用戶注冊界面,先進(jìn)行用戶注冊,這是用戶進(jìn)入論壇的一個(gè)通道,是任何論壇都不可缺少的一部分。注冊界面效果如圖6.4所示:圖6.4在線論壇注冊界面 6.3論壇帖子模塊設(shè)計(jì)6.3.1發(fā)表新帖子點(diǎn)擊某一在線論壇板塊,進(jìn)入帖子頁面,單擊“發(fā)貼”,則進(jìn)入發(fā)表新帖子的頁面;也可直接在頁面頭部點(diǎn)擊發(fā)帖,進(jìn)入發(fā)表帖子頁面,如圖6.5所示。圖6.5在線論壇發(fā)帖界面本論壇只允許會員發(fā)表新帖子,可以發(fā)表帖子主題,發(fā)表者的心情狀態(tài),帖子的具體內(nèi)容等,這也是帖子表里應(yīng)有的最基本信息。其中“內(nèi)容”是指書寫帖子內(nèi)容時(shí)輸入框支持什么不支持什么等。具體內(nèi)容輸入框上的按鈕可以對輸入的內(nèi)容進(jìn)行字體等方面的設(shè)置,用過Word的人可以很容易掌握這些小按鈕的用法,其中有加粗、斜體、下劃線等,還可以設(shè)置字體效果等。輸入框下方提供了一些小圖片,用戶單擊表情圖標(biāo)就可以在帖子中加入相應(yīng)的表情。所有的內(nèi)容都填寫完畢后,單擊發(fā)表按鈕則數(shù)據(jù)庫中相應(yīng)的帖子表增加一條記錄,用戶帖子發(fā)表成功。6.3.2帖子列表帖子是論壇的主要交流內(nèi)容,是用戶-網(wǎng)頁-用戶之間交流的必要手段。單擊某一論壇板塊,則進(jìn)入帖子列表頁面。瀏覽版塊帖子效果如圖6.6所示:圖6.6在線論壇帖子界面瀏覽帖子頁面及其功能實(shí)現(xiàn)的部分代碼如下:publicclassDotopicListextendsActionSupport{ privateintforumid; privateList<TopicList>topicList=null; privateintpage; privateintiflogin; privateintpageCount; publicStringexecute(){ try{ topicList=TopicListDAO.search(page,forumid); pageCount=TopicListDAO.getPageCount(forumid); }catch(Exceptione){ topicList=null; pageCount=0; } returnSUCCESS; } publicintgetPageCount(){ returnpageCount; } publicvoidsetPageCount(intpageCount){ this.pageCount=pageCount; } publicintgetIflogin(){ returniflogin; } publicvoidsetIflogin(intiflogin){ this.iflogin=iflogin; } publicintgetForumid(){ returnforumid; } publicintgetPage(){ returnpage; } publicvoidsetPage(intpage){ this.page=page; } publicvoidsetForumid(intforumid){ this.forumid=forumid; } publicList<TopicList>getTopicList(){ returntopicList; } publicvoidsetTopicList(List<TopicList>topicList){ this.topicList=topicList; }}6.3.3瀏覽帖子從首頁單擊某一具體的帖子板塊,可以瀏覽該板塊的帖子。單擊某一用戶感興趣的具體帖子,可以瀏覽該帖子的具體內(nèi)容。瀏覽帖子界面如圖6.7所示。瀏覽某一個(gè)具體帖子的界面,最上方發(fā)帖、回帖按鈕,用戶可以單擊按鈕進(jìn)行相應(yīng)的操作。再下來是作者的一些基本信息。同一水平線上與之對應(yīng)的是帖子的具體信息,包括帖子的內(nèi)容、發(fā)表時(shí)間等。還可以對帖子做相應(yīng)的一些操作或進(jìn)入相關(guān)鏈接。如果帖子有跟帖,則會在這個(gè)帖子的下方以同樣的表現(xiàn)形式列出來。圖6.7在線論壇跟帖界面7后臺管理模塊的設(shè)計(jì)與實(shí)現(xiàn)論壇后臺的設(shè)計(jì)是為前臺論壇功能服務(wù)的,前臺主要是論壇帖子的管理,所以后臺必須有支持前臺帖子發(fā)布的論壇管理,用戶個(gè)人信息的有些設(shè)置也是在后臺管理的。后臺的維護(hù)功能主要包括如下:論壇版塊管理、帖子專區(qū)管理、回復(fù)主題管理、用戶管理、管理員注銷。7.1管理員登陸點(diǎn)擊首頁的管理員登陸按鈕即可進(jìn)入管理員的登陸界面,如下圖7.1所示,管理員的賬號和密碼是數(shù)據(jù)庫里默認(rèn)已經(jīng)存在的用戶名admin,密碼admin。管理員不可注冊,只能后臺修改普通用戶權(quán)限成為管理員。圖7.1在線論壇登陸界面管理員登陸成功后,可直接跳轉(zhuǎn)進(jìn)入后臺管理界面,界面左側(cè)是功能菜單,包括論壇板塊管理,帖子專區(qū)管理,用戶的權(quán)限管理,和用戶注銷功能。publicclassDoadminloginextendsActionSupport{ privateLoginlogin=newLogin(); publicStringexecute()throwsException{ if(LoginDAO.adminlogin(login.getUsername(),login.getPassword())){ ActionContext.getContext().getSession().put("adminName", login.getUsername()); returnsuccess; }else{ this.addFieldError("adminlogin","你輸入的用戶名或密碼錯(cuò)誤,請重新輸入"); returnerror; } } publicLogingetLogin(){ returnlogin; } publicvoidsetLogin(Loginlogin){ this.login=login; }}7.2論壇管理管理員登錄進(jìn)入后臺管理模塊,可以新建論壇板塊,刪除論壇板塊以及更換版主,如圖7.2所示是管理員首先看到的論壇版塊管理界面:圖7.2論壇版塊管理界面后臺顯示的首頁部分主要采用了frame框架,使界面簡潔易操作,格局一目了然。實(shí)現(xiàn)的部分代碼如下所示:<framesetrows="35%,*"frameborder="0"framespacing="0"><framesrc="admintop.jsp"name="topFrame"scrolling="no"noresize><framesetcols="13%,14%,*,12%"frameborder="1"bordercolor="red"framespacing="0"><framesrc="kong.jsp"name="leftFrame"scrolling="NO"noresize> <framesrc="left.jsp"name="leftFrame"scrolling="NO"noresize><framesrc="main.jsp"name="mainFrame"scrolling="yes"noresize> <framesrc="kong.jsp"name="mainFrame"scrolling="no"noresize></frameset></frameset>7.2.1添加論壇版塊論壇板塊的管理包括新增專區(qū)、更換專區(qū)版主和刪除該版塊。如圖7.3所示是單擊新增專區(qū)按鈕即可添加一個(gè)新的論壇板塊,相應(yīng)的數(shù)據(jù)庫論壇版塊表里增加一條記錄。圖7.3論壇版塊管理界面添加論壇版塊功能實(shí)現(xiàn)的部分代碼如下所示:publicclassDoAddForumextendsActionSupport{ privateStringforumname; privateStringmanager; privateStringresult; publicStringexecute(){ if(ForumDao.AddRecord(forumname,manager)){ result="恭喜,成功增加版塊!"; } else result="對不起,版塊增加失敗,請稍后再試。"; returnsuccess; } publicStringgetForumname(){ returnforumname; } publicvoidsetForumname(Stringforumname){ this.forumname=forumname; } publicStringgetManager(){ returnmanager; } publicvoidsetManager(Stringmanager){ this.manager=manager; } publicStringgetResult(){ returnresult; } publicvoidsetResult(Stringresult){ this.result=result; }}7.2.2刪除論壇分類對數(shù)據(jù)有新增功能,就必然要有刪除功能,要刪除論壇版塊,是通過單擊刪除專區(qū)按鈕完成刪除操作。刪除論壇分類功能實(shí)現(xiàn)代碼如下所示:publicclassDoDeleteForumextendsActionSupport{ privateintid; privateStringresult; publicStringexecute(){ if(ForumDao.deleteRecord(id)){ result="恭喜,成功刪除!"; } else result="刪除失敗,該版還有帖子沒刪除!"; returnsuccess; } publicStringgetResult(){ returnresult; } publicvoidsetResult(Stringresult){ this.result=result; } publicintgetId(){ returnid; } publicvoidsetId(intid){ this.id=id; }}7.2.3修改論壇版主單擊界面上方的版塊選擇區(qū),以及版主名稱后,點(diǎn)擊提交按鈕,界面與圖7.2相同,不同的是修改的界面綁定了原有的數(shù)據(jù)。修改選定的版塊版主,數(shù)據(jù)庫論壇表里相應(yīng)的一條記錄信息被修改了。7.3用戶管理在這里后臺用戶模塊的設(shè)計(jì)是對前臺人員的維護(hù)。前臺新建注冊的系統(tǒng)用戶,在此都可以看到,管理員可以對用戶進(jìn)行權(quán)限設(shè)置,在刪除列選中相應(yīng)的用戶名后可以刪除該用戶。該模塊的功能主要是管理前臺系統(tǒng)的基本用戶,為了用戶信息不產(chǎn)生冗余,影響系統(tǒng)的性能。這給管理員一個(gè)進(jìn)行管理用戶的接口。如圖7.4所示:圖7.4論壇用戶管理界面實(shí)現(xiàn)該模塊功能的部分代碼如下所示:publicclassDoAlteruserextendsActionSupport{ privateLoginuser; privateStringresult; publicStringexecute(){ if(com.bbs.struts.DAO.LoginDAO.UpdateRecord(user.getUsername(),user.getGrade())) result="修改成功!"; else result="修改失?。?; returnsuccess; } publicLogingetUser(){ returnuser; } publicvoidsetUser(Loginuser){ this.user=user; } publicStringgetResult(){ returnresult; } publicvoidsetResult(Stringresult){ this.result=result; }}publicclassDoDeleteuserextendsActionSupport{ privateStringusername; privateStringresult; publicStringexecute(){ if(com.bbs.struts.DAO.LoginDAO.deleteRecord(username)) result="刪除成功!"; else result="刪除失敗!"; returnsuccess; } publicStringgetUsername(){ returnusername; } publicvoidsetUsername(Stringusername){ this.username=username; } publicStringgetResult(){ returnresult; } publicvoidsetResult(Stringresult){ this.result=result; }}7.4專區(qū)帖子管理在這里管理員主要是對某一專區(qū)帖子的管理,可刪除一些不好的帖子或者重復(fù)的帖子等。專區(qū)帖子管理界面如下圖7.5所示。圖7.5論壇帖子管理界面7.5回復(fù)主題管理在該管理模塊,管理員同樣是對用戶的跟帖進(jìn)行管理,刪除一些不好的,不當(dāng)?shù)难哉?。回?fù)主題管理界面如下圖7.6所示。圖7.6回復(fù)主題管理界面7.6管理員注銷當(dāng)管理員完成后臺操作后,可進(jìn)行賬號的注銷。點(diǎn)擊左側(cè)的注銷登錄,可退出登錄,注銷成功后自動轉(zhuǎn)到前臺在線論壇首頁。功能實(shí)現(xiàn)代碼如下:packagecom.bbs.struts.action;importcom.opensymphony.xwork2.ActionContext;importcom.opensymphony.xwork2.ActionSupport;publicclassDologinoffextendsActionSupport{ publicStringexecute(){ ActionContext.getContext().getSession().clear(); returnsuccess; }}8結(jié)論隨著計(jì)算機(jī)、通信和多媒體技術(shù)的發(fā)展,使得網(wǎng)絡(luò)的應(yīng)用更加廣泛。尤其在跨入21世紀(jì)后,在網(wǎng)絡(luò)上,幾乎每一個(gè)網(wǎng)民都有一種在某個(gè)特定的區(qū)域就某一感興趣的話題或某種情感、心理的訴求而進(jìn)行交流的需要,這種需要引發(fā)了網(wǎng)絡(luò)虛擬社區(qū)的誕生。也就是論壇系統(tǒng)(bulletinboardsystem)。Struts技術(shù)的設(shè)計(jì)目的是使得構(gòu)造基于Web的應(yīng)用程序更加容易和快捷,而這些應(yīng)用程序能夠與各種Web服務(wù)器,應(yīng)用服務(wù)器,瀏覽器和開發(fā)工具共同工作,因此本論壇采用Struts技術(shù)開放能滿足這種需求。論文中詳細(xì)討論了在線論壇系統(tǒng)的設(shè)計(jì)思想,包括系統(tǒng)體系結(jié)構(gòu)的設(shè)計(jì)、系統(tǒng)功能模塊設(shè)計(jì)、數(shù)據(jù)庫設(shè)計(jì)、系統(tǒng)的實(shí)現(xiàn)等。根據(jù)軟件設(shè)計(jì)和實(shí)現(xiàn)的情況,重點(diǎn)闡述了系統(tǒng)實(shí)現(xiàn)過程中功能模塊設(shè)計(jì)、數(shù)據(jù)庫設(shè)計(jì)、組件的設(shè)計(jì)、前臺顯示部分設(shè)計(jì)、后臺維護(hù)部分設(shè)計(jì)等關(guān)鍵設(shè)計(jì)。到論文截稿時(shí),基于Struts的在線論壇系統(tǒng)已通過運(yùn)行測試,基本完成預(yù)期目標(biāo)的實(shí)現(xiàn);能夠達(dá)到網(wǎng)民在某個(gè)特定的區(qū)域就某一感興趣的話題或某種情感、心理的訴求而進(jìn)行交流的需要。但由于系統(tǒng)開發(fā)的經(jīng)驗(yàn)不足,水平有限,所以目前在線論壇系統(tǒng)的實(shí)現(xiàn)上還有許多地方需要進(jìn)一步的改善和提高?;赟truts的在線論壇系統(tǒng)只是實(shí)現(xiàn)了論壇的基本功能,還有很多比較流行的功能尚未實(shí)現(xiàn),在算法的采用和數(shù)據(jù)庫邏輯的設(shè)計(jì)上還存在一些不完善的地方。在以后的學(xué)習(xí)和工作中,將繼續(xù)努力使系統(tǒng)更加完善。在線論壇系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)過程中系統(tǒng)從不可用,到可用運(yùn)行,從字符亂碼,到正常的中文顯示。一次次的改進(jìn),這使本人認(rèn)識到設(shè)計(jì)、算法在系統(tǒng)開發(fā)中的重要性和理論與實(shí)踐相結(jié)合的重要性。參考文獻(xiàn)[1]孫家廣.軟件工程理論、方法與實(shí)踐[M].北京:清華大學(xué)出版社:2007年.[2]朱福喜,唐曉軍.Java程序設(shè)計(jì)技巧與開發(fā)實(shí)例

北京:人民郵電出版社:2004.[3]《程序員》雜志社.程序員2004合訂本下

北京:電子工業(yè)出版社:2005.[4](美)S·T·金,D·韋弗.因特網(wǎng)之傳播學(xué)研究:主題元分析.陳源摘譯[M].國外社會科學(xué),2003.65-68[5]黃少華.網(wǎng)絡(luò)時(shí)代社會學(xué)的理論重構(gòu)[M]。寧夏大學(xué)學(xué)報(bào)(人文社會學(xué)科版),2002.03-12.[6]陳潔.BBS,中國公共領(lǐng)域的曙光[M]。中國青年研究,1999.52-54.[7]孫衛(wèi)琴.java網(wǎng)絡(luò)編程精解.北京:電子工業(yè)出版社,2007.106.[8]王程輝、李存斌.J2EE框架與MVC技術(shù)相結(jié)合模式的應(yīng)用與實(shí)現(xiàn)[A].2006北京地區(qū)高校研究生學(xué)術(shù)交流會—通信現(xiàn)信息技術(shù)會議論文集(下)[C].北京:中國電子學(xué)會、北京郵電大學(xué),2006.12.22:1652-1658.

[9]張桂元,賈燕楓.Struts開發(fā)入門與項(xiàng)目實(shí)踐[M].北京:人民郵電出版社,2009.12.

[10]汪孝宜,劉中兵,徐佳晶.JSP數(shù)據(jù)庫開發(fā)實(shí)例精粹[M]..北京:電子工業(yè)出版社.2005.1[11]楊學(xué)瑜.JSP入門與提高[M].北京:清華大學(xué)出版社.2002:23-57[12]孫衛(wèi)琴.Tomcat與JavaWeb開發(fā)技術(shù)詳解[M].北京:電子工業(yè)出版社.2005.8[13]StevenHolzner.Java..MATTTELLES[M].北京:機(jī)械工業(yè)出版社,2002.1

[14]PhilHanna.JSP,Technologydaqo[M].北京:機(jī)械工業(yè)出版社,2002.3

[15]KarlMoss.JavaServletDevelopersguide[M].北京:清華大學(xué)出版社,2002致謝基于C8051F單片機(jī)直流電動機(jī)反饋控制系統(tǒng)的設(shè)計(jì)與研究基于單片機(jī)的嵌入式Web服務(wù)器的研究MOTOROLA單片機(jī)MC68HC(8)05PV8/A內(nèi)嵌EEPROM的工藝和制程方法及對良率的影響研究基于模糊控制的電阻釬焊單片機(jī)溫度控制系統(tǒng)的研制基于MCS-51系列單片機(jī)的通用控制模塊的研究基于單片機(jī)實(shí)現(xiàn)的供暖系統(tǒng)最佳啟停自校正(STR)調(diào)節(jié)器單片機(jī)控制的二級倒立擺系統(tǒng)的研究基于增強(qiáng)型51系列單片機(jī)的TCP/IP協(xié)議棧的實(shí)現(xiàn)基于單片機(jī)的蓄電池自動監(jiān)測系統(tǒng)基于32位嵌入式單片機(jī)系統(tǒng)的圖像采集與處理技術(shù)的研究基于單片機(jī)的作物營養(yǎng)診斷專家系統(tǒng)的研究基于單片機(jī)的交流伺服電機(jī)運(yùn)動控制系統(tǒng)研究與開發(fā)基于單片機(jī)的泵管內(nèi)壁硬度測試儀的研制基于單片機(jī)的自動找平控制系統(tǒng)研究基于C8051F040單片機(jī)的嵌入式系統(tǒng)開發(fā)基于單片機(jī)的液壓動力系統(tǒng)狀態(tài)監(jiān)測儀開發(fā)模糊Smith智能控制方法的研究及其單片機(jī)實(shí)現(xiàn)一種基于單片機(jī)的軸快流CO〈,2〉激光器的手持控制面板的研制基于雙單片機(jī)沖床數(shù)控系統(tǒng)的研究基于CYGNAL單片機(jī)的在線間歇式濁度儀的研制基于單片機(jī)的噴油泵試驗(yàn)臺控制器的研制基于單片機(jī)的軟起動器的研究和設(shè)計(jì)基于單片機(jī)控制的高速快走絲電火花線切割機(jī)床短循環(huán)走絲方式研究基于單片機(jī)的機(jī)電產(chǎn)品控制系統(tǒng)開發(fā)基于PIC單片機(jī)的智能手機(jī)充電器基于單片機(jī)的實(shí)時(shí)內(nèi)核設(shè)計(jì)及其應(yīng)用研究基于單片機(jī)的遠(yuǎn)程抄表系統(tǒng)的設(shè)計(jì)與研究基于單片機(jī)的煙氣二氧化硫濃度檢測儀的研制基于微型光譜儀的單片機(jī)系統(tǒng)單片機(jī)系統(tǒng)軟件構(gòu)件開發(fā)的技術(shù)研究基于單片機(jī)的液體點(diǎn)滴速度自動檢測儀的研制基于單片機(jī)系統(tǒng)的多功能溫度測量儀的研制基于PIC單片機(jī)的電能采集終端的設(shè)計(jì)和應(yīng)用基于單片機(jī)的光纖光柵解調(diào)儀的研制氣壓式線性摩擦焊機(jī)單片機(jī)控制系統(tǒng)的研制基于單片機(jī)的數(shù)字磁通門傳感器基于單片機(jī)的旋轉(zhuǎn)變壓器-數(shù)字轉(zhuǎn)換器的研究基于單片機(jī)的光纖Bragg光柵解調(diào)系統(tǒng)的研究單片機(jī)控制的便攜式多功能乳腺治療儀的研制基于C8051F020單片機(jī)的多生理信號檢測儀基于單片機(jī)的電機(jī)運(yùn)動控制系統(tǒng)設(shè)計(jì)Pico專用單片機(jī)核的可測性設(shè)計(jì)研究基于MCS-51單片機(jī)的熱量計(jì)基于雙單片機(jī)的智能遙測微型氣象站MCS-51單片機(jī)構(gòu)建機(jī)器人的實(shí)踐研究基于單片機(jī)的輪軌力檢測基于單片機(jī)的GPS定位儀的研究與實(shí)現(xiàn)基于單片機(jī)的電液伺服控制系統(tǒng)用于單片機(jī)系統(tǒng)的MMC卡文件系統(tǒng)研制基于單片機(jī)的時(shí)控和計(jì)數(shù)系統(tǒng)性能優(yōu)化的研究基于單片機(jī)和CPLD的粗光柵位移測量系統(tǒng)研究單片機(jī)控制的后備式方波UPS提升高職學(xué)生單片機(jī)應(yīng)用能力的探究基于單片機(jī)控制的自動低頻減載裝置研究基于單片機(jī)控制的水下焊接電源的研究基于單片機(jī)的多通道數(shù)據(jù)采集系統(tǒng)基于uPSD3234單片機(jī)的氚表面污染測量儀的研制基于單片機(jī)的紅外測油儀的研究96系列單片機(jī)仿真器研究與設(shè)計(jì)基于單片機(jī)的單晶金剛石刀具刃磨設(shè)備的數(shù)控改造基于單片機(jī)的溫度智能控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)基于MSP430單片機(jī)的電梯門機(jī)控制器的研制基于單片機(jī)的氣體測漏儀的研究基于三菱M16C/6N系列單片機(jī)的CAN/USB協(xié)議轉(zhuǎn)換器基于單片機(jī)和DSP的變壓器油色譜在線監(jiān)測技術(shù)研究基于單片機(jī)的膛壁溫度報(bào)警系統(tǒng)設(shè)計(jì)基于AVR單片機(jī)的低壓無功補(bǔ)償控制器的設(shè)計(jì)基于單片機(jī)船舶電力推進(jìn)電機(jī)監(jiān)測系統(tǒng)基于單片機(jī)網(wǎng)絡(luò)的振動信號的采集系統(tǒng)基于單片機(jī)的大容量數(shù)據(jù)存儲技術(shù)的應(yīng)用研究基于單片機(jī)的疊圖機(jī)研究與教學(xué)方法實(shí)踐基于單片機(jī)嵌入式Web服務(wù)器技術(shù)的研究及實(shí)現(xiàn)基于AT89S52單片機(jī)的通用數(shù)據(jù)采集系統(tǒng)基于單片機(jī)的多道脈沖幅度分析儀研究機(jī)器人旋轉(zhuǎn)電弧傳感角焊縫跟蹤單片機(jī)控制系統(tǒng)HYPERLINK"/d

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論