呂洋
摘 要 當(dāng)今社會(huì)是一個(gè)信息飛速發(fā)達(dá)的社會(huì),人們通過(guò)網(wǎng)絡(luò)可以進(jìn)行信息交流。論壇就是一種Internet網(wǎng)上開(kāi)發(fā)信息服務(wù)系統(tǒng),論壇用戶可以方便的實(shí)現(xiàn)信息的交換和文件的共享。本文研究并實(shí)現(xiàn)了基于B/S模式的BBS論壇系統(tǒng),在結(jié)合動(dòng)態(tài)服務(wù)網(wǎng)頁(yè)(JSP)和Mysql數(shù)據(jù)庫(kù)之下開(kāi)發(fā)了這個(gè)快捷、界面友好的簡(jiǎn)易系統(tǒng),該系統(tǒng)采用目前流行的MVC三層架構(gòu)。本文從BBS系統(tǒng)的可行性、需求、總體設(shè)計(jì)等方面闡述了整個(gè)系統(tǒng)的開(kāi)發(fā)過(guò)程。
關(guān)鍵詞 互聯(lián)網(wǎng) BBS
中圖分類號(hào):TP393文獻(xiàn)標(biāo)識(shí)碼:A
隨著計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)的不斷發(fā)展和普及,我們開(kāi)發(fā)了這套校園BBS論壇系統(tǒng),校園BBS的目的是使師生及時(shí)參與到論壇信息的交流中來(lái),成為學(xué)子們獲取專業(yè)信息、解決學(xué)習(xí)問(wèn)題的重要途徑。由于大學(xué)課程學(xué)習(xí)的特殊性,強(qiáng)調(diào)學(xué)生自主學(xué)習(xí),除了在課堂上請(qǐng)教老師同學(xué)外,基本沒(méi)有集體討論的時(shí)間。而在BBS上,學(xué)生可以提出問(wèn)題,共同商量討論,還可以向老師學(xué)長(zhǎng)請(qǐng)教。同時(shí)還有豐富課外生活,向校外宣傳我校等作用。
1系統(tǒng)模塊總體設(shè)計(jì)
通過(guò)層次方框圖來(lái)表示網(wǎng)站中各模塊間的關(guān)系。層次方框圖是用樹(shù)形結(jié)構(gòu)的一系列多層次的矩形框描繪數(shù)據(jù)的層次結(jié)構(gòu)。樹(shù)形結(jié)構(gòu)的頂層是一個(gè)單獨(dú)的矩形框,它代表完整的數(shù)據(jù)結(jié)構(gòu),下面的各層矩形框代表各個(gè)數(shù)據(jù)的子集,最底層的各個(gè)矩形框代表組成這個(gè)數(shù)據(jù)的實(shí)際數(shù)據(jù)元素(不能再分割的元素)。隨著結(jié)構(gòu)的精細(xì)化,層次圖對(duì)數(shù)據(jù)結(jié)構(gòu)也描繪得越來(lái)越詳細(xì),這種模式非常適合總體設(shè)計(jì)階段。從對(duì)頂層信息的分類開(kāi)始,沿著圖中每條路徑反復(fù)細(xì)化,直到確定了數(shù)據(jù)結(jié)構(gòu)的全部細(xì)節(jié)為止。
系統(tǒng)分為兩大子系統(tǒng),每個(gè)子系統(tǒng)在表面上是相互獨(dú)立的,但對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)上是緊密相連的,每個(gè)子系統(tǒng)訪問(wèn)的是同一個(gè)數(shù)據(jù)庫(kù),只是所訪問(wèn)的表不同。每個(gè)子系統(tǒng)中的模塊功能都是按照在調(diào)研中搜集的資料進(jìn)行編排制作的。建立一個(gè)有良好的數(shù)據(jù)組織結(jié)構(gòu)的數(shù)據(jù)庫(kù),應(yīng)遵循的原則:(1)減少數(shù)據(jù)冗余和重復(fù)。(2)結(jié)構(gòu)設(shè)計(jì)和操作設(shè)計(jì)相結(jié)合。(3)數(shù)據(jù)結(jié)構(gòu)有相對(duì)的穩(wěn)定性。
數(shù)據(jù)庫(kù)中的數(shù)據(jù)是系統(tǒng)中非常重要的資源,所以在數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí)一定要注意數(shù)據(jù)結(jié)構(gòu)的安全性、完整性,并發(fā)控制與恢復(fù)。該系統(tǒng)采用MySQL作為后臺(tái)數(shù)據(jù)庫(kù)去存儲(chǔ)與系統(tǒng)有關(guān)的數(shù)據(jù),通過(guò)對(duì)整個(gè)校園論壇系統(tǒng)的運(yùn)行和數(shù)據(jù)流程分析,設(shè)計(jì)出實(shí)際的數(shù)據(jù)庫(kù)實(shí)體及之間的關(guān)系,為數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)打基礎(chǔ)。
論壇系統(tǒng)信息的儲(chǔ)存一般是在文件或者數(shù)據(jù)庫(kù)中,相比之下數(shù)據(jù)庫(kù)要簡(jiǎn)單高效,能對(duì)論壇進(jìn)行更好的控制,也能對(duì)資料提供一些嚴(yán)正和保護(hù)。所以目前流行的論壇都是使用的數(shù)據(jù)庫(kù)系統(tǒng)。
2用戶注冊(cè)與登錄網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)
要完成論壇的各項(xiàng)操作,用戶必須登陸論壇系統(tǒng),若無(wú)論壇帳戶,用戶注冊(cè)是必須的。用戶命令若是退出,則清除用戶的狀態(tài)信息,并返回BBS首頁(yè)。若是登錄則使用MySQL連接數(shù)據(jù)庫(kù),取得用戶輸入的帳號(hào)和密碼并查詢數(shù)據(jù)庫(kù),將得出的結(jié)果和用戶輸入的信息做比較,驗(yàn)證正確,顯示用戶已經(jīng)登陸到系統(tǒng),錯(cuò)誤將返回消息讓用戶重新輸入。若用戶想注冊(cè)帳戶,則返回注冊(cè)頁(yè)面,用戶填寫(xiě)信息后,將檢測(cè)信息的正確性,若帳號(hào)正確則允許注冊(cè),并將信息寫(xiě)入到數(shù)據(jù)庫(kù)中,若帳戶已存在,則返回錯(cuò)誤信息,顯示用戶帳號(hào)存在,請(qǐng)用戶重新輸入,并完成注冊(cè),進(jìn)程結(jié)束。
用戶通過(guò)點(diǎn)擊各個(gè)欄目名稱進(jìn)入版面,瀏覽主題、發(fā)帖,單擊主題名稱后便進(jìn)入主題內(nèi)容,可瀏覽以及回復(fù)等。
管理員對(duì)欄目的管理,可增設(shè)新欄目,刪除已有欄目,給欄目賦于版主等;對(duì)主題專區(qū)的管理可對(duì)不符合規(guī)定的主題及回復(fù)進(jìn)行刪除;對(duì)用戶的管理可在眾多用戶中進(jìn)行模糊查詢,刪除用戶以及編輯用戶。
通過(guò)前面的需求分析和總體設(shè)計(jì),在功能模塊及數(shù)據(jù)要求方面已得到確定,在此基礎(chǔ)上通過(guò)該階段的詳細(xì)設(shè)計(jì),解決了程序設(shè)計(jì)方面的問(wèn)題。在設(shè)計(jì)中主要采用面向?qū)ο蟮姆椒ǎ浞掷瞄_(kāi)發(fā)平臺(tái)的強(qiáng)大功能,完成程序開(kāi)發(fā),并對(duì)系統(tǒng)進(jìn)行精確的描述。
3軟件的測(cè)試
Apache提供的Web服務(wù)器Tomcat 6.0使得用戶可以在Windows 2000以上操作系統(tǒng)下發(fā)布自己設(shè)計(jì)的動(dòng)態(tài)網(wǎng)頁(yè)。因此對(duì)論壇的調(diào)試工作主要是利用Tomcat 6.0的強(qiáng)大功能在本機(jī)下完成的。為了在本機(jī)下瀏覽Web頁(yè)面,首先在創(chuàng)建該系統(tǒng)的站點(diǎn)上(該系統(tǒng)使用的是Web的默認(rèn)站點(diǎn))將IP地址設(shè)定為127.0.0.1,它的缺省域名值為localhost。然后向IE瀏覽器輸入本地動(dòng)態(tài)網(wǎng)頁(yè)的URL,Web服務(wù)器在收到瀏覽器傳送的URL之后找到網(wǎng)頁(yè)文件,并在服務(wù)器端執(zhí)行該文件后將此文件以HTML文件的形式返回該瀏覽器。
程序中存在著許多預(yù)料不到的問(wèn)題,許多隱藏的錯(cuò)誤只有在特定的環(huán)境下才可能暴露出來(lái)。若不把著眼點(diǎn)放在查找錯(cuò)誤的基礎(chǔ)上,那隱藏的錯(cuò)誤和缺陷就查不出來(lái),會(huì)遺留到運(yùn)行階段。若站在用戶的角度,就應(yīng)當(dāng)把測(cè)試活動(dòng)的目標(biāo)對(duì)準(zhǔn)揭露程序中存在的錯(cuò)誤。在選取測(cè)試用例時(shí),考慮那些易于發(fā)現(xiàn)程序錯(cuò)誤的數(shù)據(jù)。
測(cè)試的主要目的就是驗(yàn)證軟件系統(tǒng)是否能達(dá)到用戶提出的性能指標(biāo),并發(fā)現(xiàn)軟件系統(tǒng)存在的性能瓶頸,優(yōu)化軟件,起到優(yōu)化系統(tǒng)的目的。在測(cè)試時(shí),發(fā)現(xiàn)系統(tǒng)的問(wèn)題并及時(shí)的解決,保證系統(tǒng)正常運(yùn)行。本系統(tǒng)的安全性和穩(wěn)定性可以滿足校園網(wǎng)內(nèi)使用要求,界面美觀友好,可以使用。