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