黃 婷 張漢龍 李自華 林 峰 馮 珊
(湖北理工學(xué)院計(jì)算機(jī)學(xué)院,湖北 黃石435003)
隨著互聯(lián)網(wǎng)的迅猛發(fā)展,越來越多的人開始使用網(wǎng)上BBS論壇來成為他們信息獲取的手段和交流的平臺(tái)。BBS是Bulletin Board System的縮寫,意思為電子公告版。它是一種在Internet上常用于信息服務(wù)的WEB系統(tǒng)。BBS論壇系統(tǒng)具有訪問吞吐量大,對(duì)性能要求高的特點(diǎn),在Web應(yīng)用開發(fā)中這樣的系統(tǒng)具有一定的代表性。另一方面,J2EE是實(shí)現(xiàn)企業(yè)級(jí)分布式應(yīng)用的平臺(tái),J2EE以其高效率,高性能,高擴(kuò)展而成為企業(yè)級(jí)應(yīng)用的優(yōu)秀解決方案。主題,從而實(shí)現(xiàn)網(wǎng)友之間的互動(dòng)。
系統(tǒng)功能模塊結(jié)構(gòu)圖如圖1所示:
本系統(tǒng)采用MVC架構(gòu)模式開發(fā),MVC是Model-View-Controller的簡稱,即模型-視圖-控制器。MVC是一種設(shè)計(jì)模式,它把應(yīng)用程序分成三個(gè)核心模塊:模型、視圖、控制器,它們各自處理自己的任務(wù)。首先控制器接收用戶的請(qǐng)求,并決定應(yīng)該調(diào)用哪個(gè)模型來進(jìn)行處理。然后模型根據(jù)用戶請(qǐng)求進(jìn)行相應(yīng)的業(yè)務(wù)邏輯處理,并返回?cái)?shù)據(jù)。最后控制器調(diào)用相應(yīng)的視圖格式化模型返回的數(shù)據(jù),并通過視圖呈現(xiàn)給用戶。具體技術(shù)如下:
顯示層:使用JSP技術(shù)開發(fā)。
控制層:使用Servlet技術(shù)開發(fā)。
模型層:使用JavaBean技術(shù)開發(fā)。
數(shù)據(jù)訪問層:使用DAO模式開發(fā)。
本系統(tǒng)是在MyEclipse環(huán)境下開發(fā)的,采用HTML語言,JSP技術(shù)和Javascript編程語言編寫,應(yīng)用MYSQL數(shù)據(jù)庫,通過安裝tomcat服務(wù)器將Windows XP環(huán)境虛擬為Web服務(wù)器,采用B/S模式。因此,只要用戶安裝了瀏覽器便可以訪問本系統(tǒng)。
本論壇系統(tǒng)主要完成以下功能:
(1)用戶注冊(cè)。提交并處理用戶信息,存儲(chǔ)在數(shù)據(jù)庫,完成注冊(cè)。注冊(cè)后的用戶可利用用戶名和密碼在論壇登陸。
(2)用戶登錄。驗(yàn)證數(shù)據(jù)庫中用戶信息是否存在及匹配,提供用戶相應(yīng)的權(quán)限。注冊(cè)后的用戶可利用用戶名和密碼在論壇登陸。
(3)瀏覽帖子。用戶可以以列表形式瀏覽帖子主題及其全部內(nèi)容。
(4)所有用戶發(fā)的文章,并可以發(fā)布自己的話題,也可響應(yīng)回復(fù)其他用戶和自己發(fā)表的話題。
(5)管理員編輯、刪除用戶帖子。作為后臺(tái)管理模塊,對(duì)論壇進(jìn)行管理。例如管理用戶、管理帖子。
對(duì)于一個(gè)論壇系統(tǒng)來說,需要提供前臺(tái)展現(xiàn)和后臺(tái)管理兩個(gè)子系統(tǒng)。其中后臺(tái)管理系統(tǒng)用來供管理員使用,能夠?qū)φ搲陌鎵K、子版塊、用戶等等信息進(jìn)行管理。前臺(tái)展現(xiàn)系統(tǒng)可供所有網(wǎng)友使用,只要網(wǎng)友進(jìn)入了論壇系統(tǒng),就能夠?yàn)g覽其他網(wǎng)友已經(jīng)發(fā)表的主題。用戶也可以發(fā)表自己感興趣的主題,不過前提是要登錄系統(tǒng),所以該系統(tǒng)還需要提供注冊(cè)和登錄功能。用戶在登錄系統(tǒng)后,還可以回復(fù)別人發(fā)表的
圖1 系統(tǒng)功能模塊結(jié)構(gòu)圖
具體的功能模塊如下:
版塊列表模塊:該模塊用來顯示論壇的所有根版塊以及其下所有子版塊,還能夠顯示子版塊下主題的數(shù)目以及最后發(fā)表記錄。
主題列表模塊:該模塊用來顯示指定板塊下的所有主題信息,還能夠顯示主題的發(fā)表者信息以及回復(fù)記錄數(shù)。
顯示主題詳細(xì)內(nèi)容模塊:該模塊用來顯示主題的詳細(xì)信息以及該主題下的所有回復(fù)信息。
后臺(tái)供管理員管理論壇之用,包括版塊設(shè)置和用戶設(shè)置兩個(gè)子模塊,具體的功能模塊如下:
版塊設(shè)置模塊:該模塊用來管理論壇的版塊和子版塊信息,包括新增版塊、編輯版塊、刪除版塊以及移動(dòng)版塊等功能子模塊。
用戶設(shè)置模塊:該模塊用來管理論壇的用戶信息,包新增用戶、更新用戶、刪除用戶以及查詢用戶等功能子模塊。
數(shù)據(jù)庫在一個(gè)系統(tǒng)中有著非常重要的地位,數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)的好壞直接影響應(yīng)用系統(tǒng)的效率及實(shí)現(xiàn)的效果。合理的數(shù)據(jù)庫可以提高數(shù)據(jù)存儲(chǔ)的效率,保證數(shù)據(jù)的完整性和一致性。
通過對(duì)以上系統(tǒng)功能和數(shù)據(jù)的分析,確定論壇系統(tǒng)全局E-R圖如圖2所示。
圖2 論壇全局E-R圖
論壇數(shù)據(jù)庫中設(shè)計(jì)的數(shù)據(jù)表有:管理員信息表,用戶信息表、帖子信息表,回帖信息表、版面信息表以及論壇主題信息表等。在數(shù)據(jù)庫表的設(shè)計(jì)中,表的內(nèi)容都使用英文單詞來存儲(chǔ)表示,并在每個(gè)名稱中加入一個(gè)標(biāo)識(shí),表明這是一個(gè)表。
用戶信息表:保存了注冊(cè)用戶的信息,用戶編號(hào)是唯一的,不重復(fù)的,同時(shí)用戶名在論壇中也是不能重復(fù)的。
回帖信息表:主要包含了要回復(fù)子版塊的編號(hào)和回復(fù)用戶的編號(hào)。在這里還有一個(gè)外鍵是回復(fù)主題,是用來和主題信息表進(jìn)行關(guān)聯(lián)的。
論壇主題信息表:這個(gè)表主要是記載了論壇中主題帖的信息,便于用戶在瀏覽論壇中的帖子時(shí),能通過這個(gè)主題列表快速找到想要瀏覽的信息。
論壇發(fā)表帖子頁面如圖3所示。
圖3 發(fā)帖頁面
管理員管理論壇頁面如圖4所示。
圖4 管理員管理頁面
該論壇系統(tǒng)已經(jīng)開發(fā)完成,它具有簡潔和諧的良好界面,操作簡單,在多個(gè)客戶端接入的情況下,都能迅速地完成操作任務(wù);此外,由于JAVA應(yīng)用程序已經(jīng)編譯,從而系統(tǒng)執(zhí)行速度快,并且整個(gè)系統(tǒng)非常穩(wěn)定。
[1]楊健.基于MVC的論壇網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2006,16(11).
[2]劉芳.網(wǎng)絡(luò)論壇BBS的設(shè)計(jì)與實(shí)現(xiàn)[J].遼寧師專學(xué)報(bào):自然科學(xué)版,2008,10(1).
[3]王曉芳.基于B/S模式的網(wǎng)絡(luò)考試系統(tǒng)的分析與實(shí)現(xiàn)[J].裝備制造技術(shù),2007(12).