版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 課程設(shè)計(jì)報(bào)告</b></p><p> 課程名稱 數(shù)據(jù)庫系統(tǒng)原理 </p><p> 設(shè)計(jì)題目BBS系統(tǒng)數(shù)據(jù)庫設(shè)計(jì) </p><p> 學(xué)生姓名 </p><p> 學(xué) 號(hào) </p>&l
2、t;p> 專業(yè)班級(jí) </p><p> 指導(dǎo)教師 </p><p> 2012 年 12 月 25 日</p><p><b> 目 錄</b></p><p><b> 一 系統(tǒng)概述4</b><
3、;/p><p> 1.1 總體概述4</p><p> 1.2 開發(fā)背景5</p><p><b> 1.3開發(fā)目的6</b></p><p><b> 二、 需求分析6</b></p><p> 2.1開發(fā)語言選用:6</p><p>
4、; 2.2 MySQL數(shù)據(jù)庫的選用7</p><p> 2.3系統(tǒng)的開發(fā)運(yùn)行環(huán)境:8</p><p> 2.4 數(shù)據(jù)字典10</p><p> 三.概念結(jié)構(gòu)設(shè)計(jì)12</p><p> 3.1概念結(jié)構(gòu)設(shè)計(jì)概述:12</p><p> 3.2基于E_R模型的概念結(jié)構(gòu)設(shè)計(jì)</p><
5、p> 四. 詳細(xì)設(shè)計(jì)和實(shí)現(xiàn)15</p><p> 4.1 程序設(shè)計(jì):15</p><p> 4.1.1創(chuàng)建數(shù)據(jù)庫:15</p><p> 4.1.2創(chuàng)建用戶表:15</p><p> 4.1.3創(chuàng)建論壇版塊表:15</p><p> 4.2 操作過程:17</p><
6、p> 五. 數(shù)據(jù)庫的實(shí)施與維護(hù)24</p><p> 5.1數(shù)據(jù)庫的試運(yùn)行24</p><p> 5.2數(shù)據(jù)庫的維護(hù)24</p><p> 六. 個(gè)人小結(jié)與體會(huì)26</p><p><b> 參考文獻(xiàn)</b></p><p><b> 摘要</b>&
7、lt;/p><p> 在網(wǎng)絡(luò)信息時(shí)代到來之前,主要的主流媒體是報(bào)刊,雜志,電視,廣播等,人們通過這些信息交流平臺(tái)了解各方面的資訊,可是更多的是接收,真正使得百姓們可以參與進(jìn)來發(fā)表自己意見和看法的時(shí)代就是21世界網(wǎng)絡(luò)的廣泛應(yīng)用,在結(jié)合JAVA和S.S.H 技術(shù)之下開發(fā)了這樣一個(gè)快捷、界面友好的論壇交流系統(tǒng),實(shí)現(xiàn)了一個(gè)功能相對(duì)齊全的論壇系統(tǒng),在這里可以自由地發(fā)表自己的觀點(diǎn)和對(duì)論壇的主題發(fā)表意見,我們還可以對(duì)網(wǎng)友的問題及
8、時(shí)地解決,獲取對(duì)自己有用的知識(shí)。本網(wǎng)站嚴(yán)格按照軟件項(xiàng)目開發(fā)的流程進(jìn)行開發(fā),對(duì)于網(wǎng)站開發(fā)的可行性分析、需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)以及對(duì)網(wǎng)站的測(cè)試與維護(hù)都有詳細(xì)的論述和實(shí)現(xiàn)過程。隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,計(jì)算機(jī)作為知識(shí)經(jīng)濟(jì)時(shí)代的產(chǎn)物,已被廣泛應(yīng) 用于社會(huì)各個(gè)行業(yè)和領(lǐng)域。隨著我國(guó)改革的深入和社會(huì)主義市場(chǎng)經(jīng)濟(jì)的日趨繁 榮,導(dǎo)致競(jìng)爭(zhēng)日益激烈,迫使我們采取先進(jìn)的計(jì)算機(jī)硬件設(shè)備以及高質(zhì)量的輔助 軟件來管理運(yùn)作,以提高效率。動(dòng)態(tài)網(wǎng)頁也是一樣,人們?cè)谄?/p>
9、上面留言發(fā)表個(gè)人 觀點(diǎn)的平臺(tái), 它是一個(gè)交互式的互動(dòng)平臺(tái),它是用戶相互交流的重要途徑,用 戶提出的要求、意見、看法,可以得到及時(shí)回復(fù)和解決,可以有效的解決用戶的 需</p><p><b> 一 系統(tǒng)概述</b></p><p><b> 1.1 總體概述</b></p><p> 隨著Internet技術(shù)的不斷發(fā)
10、展,以及用戶群爆炸性地增長(zhǎng),網(wǎng)絡(luò)不再僅僅是信息的被動(dòng)獲取來源,更成為人們探討間題、交換觀點(diǎn)的場(chǎng)所,其中,網(wǎng)上論壇扮演了極其重要的角色</p><p> 論壇又名BBS,全稱為Bulletin Board System(電子公告板)或者Bulletin Board Service(公告板服務(wù))。它是Internet上的一種電子信息服務(wù)系統(tǒng)。它提供一塊公共電子白板,每個(gè)用戶都可以在上面書寫,可發(fā)布信息或提出看法。它
11、是一種交互性強(qiáng),內(nèi)容豐富而即使的電子信息服務(wù)系統(tǒng)。用戶在BBS站點(diǎn)上可以獲得各種信息服務(wù)、發(fā)布信息、進(jìn)行討論、聊天等等。像日常生活中的黑板報(bào)一樣,論壇按不同的主題分為許多版塊,版面的設(shè)立依據(jù)是大多數(shù)擁護(hù)的要求和喜好,用戶可以閱讀別人關(guān)于某個(gè)主題的看法,也可以將自己的想法毫無保留地帖到論壇中。</p><p> 隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,BBS論壇的功能越來越強(qiáng)大,論壇站點(diǎn)中積存了豐富的信息資源,不但有各類技
12、術(shù)資料和新聞文檔,還包含著用戶的判斷和評(píng)論,論壇站點(diǎn)己成為Web信息庫的重要組成部分,自網(wǎng)上論壇誕生20多年以來,隨著Web技術(shù)的發(fā)展,己經(jīng)由原來簡(jiǎn)單的電子公告板系統(tǒng)發(fā)展為功能豐富的網(wǎng)上論壇和虛擬社區(qū)模式。各種論壇隨著網(wǎng)絡(luò)迅速發(fā)展,幾乎充實(shí)著生活工作的每一個(gè)方面,無論是商界、政界,還是娛樂界,都有各種論壇?;ヂ?lián)網(wǎng)正在融入我們的生活,網(wǎng)絡(luò)提供給我們的不只是一個(gè)獲取信息的來源,而且還是一個(gè)可以相互交流的空間,網(wǎng)上論壇正是一種供人們進(jìn)行交流的
13、網(wǎng)絡(luò)空間, 影響和改變著我們的生活。</p><p> 目前BBS的主要功能有以下幾點(diǎn):</p><p> (1) 供用戶自我選擇閱讀若干感興趣的專業(yè)組和討論組內(nèi)的信息。</p><p> (2) 可隨意檢查是否有新消息發(fā)布并選擇閱讀。</p><p> (3) 用戶可在站點(diǎn)內(nèi)發(fā)布消息或文章供他人查閱。</p><
14、p> (4) 用戶可就站點(diǎn)內(nèi)其他人的消息或文章進(jìn)行評(píng)論。</p><p> (5) 同一站點(diǎn)內(nèi)的用戶互通電子郵件, 設(shè)定好友名單</p><p><b> 1.2 開發(fā)背景</b></p><p> 1978年在美國(guó)芝加哥開發(fā)出一套基于8080芯片的CBBS/Chicago (Computerized Bulletin Board
15、 System/Chicago),此乃最早的一套BBS系統(tǒng)。之后隨著蘋果機(jī)的問世,開發(fā)出基于蘋果機(jī)的Bulletin Board System和大眾信息系統(tǒng)(Peoples Message System)2種BBS系統(tǒng)。1981年IBM個(gè)人計(jì)算機(jī)誕生時(shí),并沒有自己的BBS系統(tǒng)。直到1982年,Buss Lane 才用Basic語言為IBM個(gè)人計(jì)算機(jī)編寫了一個(gè)原型程序。其后經(jīng)過幾番增修,終于在1983年通過Capital PC User
16、Group(CPCUG)的Communication Special Interest Group會(huì)員的努力,改寫出了個(gè)人計(jì)算機(jī)系統(tǒng)的BBS。經(jīng)Thomas Mach整理后,終于完成了個(gè)人計(jì)算機(jī)的第1版BBS系統(tǒng)——RBBS-PC。這套BBS系統(tǒng)的最大特色是其源程序全部公開,有利于日后的修改和維護(hù),因此后來在開發(fā)其他的BBS系統(tǒng)時(shí)都以此為框架,所以RBBS-PC贏得了BBS鼻祖的美稱。</p><p> 大約是
17、從1991年開始,國(guó)內(nèi)開始了第一個(gè)BBS站。經(jīng)過長(zhǎng)時(shí)間的發(fā)展,直到1995年,隨著計(jì)算機(jī)及其外設(shè)的大幅降價(jià),BBS才逐漸被人們所認(rèn)識(shí)。1996年更是以驚人的速度發(fā)展起來。國(guó)內(nèi)的BBS站,按其性質(zhì)劃分,可以分為2種:一種是商業(yè)BBS站,如新華龍訊網(wǎng);另一種是業(yè)余BBS站,如天堂資訊站。由于使用商業(yè)BBS站要交納一筆費(fèi)用,而商業(yè)站所能提供的服務(wù)與業(yè)余站相比,并沒有什么優(yōu)勢(shì),所以其用戶數(shù)量不多。多數(shù)業(yè)余BBS站的站長(zhǎng),基于個(gè)人關(guān)系,每天都互相
18、交換電子郵件,漸漸地形成了一個(gè)全國(guó)性的電子郵件網(wǎng)絡(luò)China FidoNet(中國(guó)惠多網(wǎng))。于是,各地的用戶都可以通過本地的業(yè)余BBS站與遠(yuǎn)在異地的網(wǎng)友互通信息。這種跨地域電子郵件交流正是商業(yè)站無法與業(yè)余站相抗衡的根本因素。由于業(yè)余BBS站擁有這種優(yōu)勢(shì),所以使用者都更樂意加入。這里“業(yè)余”2字,并不是代表這種類型的BBS站的服務(wù)和技術(shù)水平是業(yè)余的,而是指這類BBS站的性質(zhì)。一般BBS站都是由志愿者開發(fā)的。他們付出的不僅是金錢,更多的是精
19、力。其目的是為了推動(dòng)中國(guó)計(jì)算機(jī)網(wǎng)絡(luò)的健康發(fā)展,提高廣大計(jì)算機(jī)用戶的應(yīng)用水平</p><p> 國(guó)內(nèi)的BBS站,大多數(shù)還是大型綜合性BBS站。隨著計(jì)算機(jī)的普及,特別是寬帶的普及,BBS的活動(dòng)將會(huì)進(jìn)一步高漲。但是,隨之而來對(duì)專注于領(lǐng)域方面的BBS將會(huì)慢慢增加需求。盡管BBS站臺(tái)的數(shù)量在不斷增長(zhǎng),但BBS的發(fā)展過程,也出現(xiàn)了一些問題。由于國(guó)內(nèi)使用的BBS架站軟件,都是從國(guó)外引進(jìn)的,因此沒有必要的中文說明。雖然一些熱心
20、的站長(zhǎng)翻譯了一些資料,但是僅靠這些是遠(yuǎn)遠(yuǎn)不夠的。另外,有些站臺(tái)的設(shè)立是相互抄襲,所以在結(jié)構(gòu)上難免有雷同之處。</p><p><b> 1.3開發(fā)目的</b></p><p> 是為企業(yè)內(nèi)部員工提供一個(gè)良好的技術(shù)交流平臺(tái),得到客戶的及時(shí)反饋,從而提高公司的整體技術(shù)水平,提高公司效益。為了滿足客戶需求,本系統(tǒng)在設(shè)計(jì)時(shí)應(yīng)實(shí)現(xiàn)以下幾個(gè)目標(biāo):</p><
21、;p> 系統(tǒng)界面友好、美觀。</p><p> 劃分用戶級(jí)別,將不同的權(quán)限劃分給不同的人群。</p><p> 合理管理論壇相關(guān)信息。</p><p><b> 易于維護(hù)和擴(kuò)展。</b></p><p><b> 系統(tǒng)運(yùn)行穩(wěn)定可靠。</b></p><p>&
22、lt;b> 二、 需求分析</b></p><p> 2.1開發(fā)語言選用:</p><p> 本系統(tǒng)所用的是JAVA語言,它的特點(diǎn)有:</p><p> 分布式Java建立在擴(kuò)展TCP/IP網(wǎng)絡(luò)平臺(tái)上。庫函數(shù)提供了用HTTP和FTP協(xié)議傳送和接受信息的方法。這使得程序員使用網(wǎng)絡(luò)上的文件和使用本機(jī)文件一樣容易。2.安全性Java的編程類
23、似C++,學(xué)習(xí)過C++的讀者將很快掌握J(rèn)ava的精髓。Java舍棄了 C++的指針對(duì)存儲(chǔ)器地址的直接操作,程序運(yùn)行時(shí),內(nèi)存由操作系統(tǒng)分配,這樣可以避免病毒通過指針侵入系統(tǒng)。Java對(duì)程序提供了安全管理器,防止程序的非法訪問。3.面向?qū)ο?lt;/p><p> Java吸取了C++面向?qū)ο蟮母拍睿瑢?shù)據(jù)封裝于類中,利用類的優(yōu)點(diǎn),實(shí)現(xiàn)了程序的簡(jiǎn)潔性和便于維護(hù)性。類的封裝性、繼承性等有關(guān)對(duì)象的特性,使程序代碼只需一次編
24、譯,然后通過上述特性反復(fù)利用。程序員只需把主要精力用在類和接口的設(shè)計(jì)和應(yīng)用上。Java提供了眾多的一般對(duì)象的類,通過繼承即可使用父類的方法。在Java中,類的繼承關(guān)系是單一的非多重的,一個(gè)子類只有一個(gè)父類,子類的父類又有一個(gè)父類。Java提供的Object類及其子類的繼承關(guān)系如同一棵倒立的樹形,根類為Object類,Object類功能強(qiáng)大,經(jīng)常會(huì)使用到它及其它派生的子類。4.健壯性Java致力于檢查程序在編譯和運(yùn)行時(shí)的錯(cuò)誤。類型檢查
25、幫助檢查出許多開發(fā)早期出現(xiàn)的錯(cuò)誤。 Java自己操縱內(nèi)存減少了內(nèi)存出錯(cuò)的可能性。Java還實(shí)現(xiàn)了真數(shù)組,避免了覆蓋數(shù)據(jù)的可能,這些功能特征大大提高了開發(fā)Java應(yīng)用程序的周期。并且 Java還提供了Null指針檢測(cè)、數(shù)組邊界檢測(cè)、異常出口、Byte code校驗(yàn)等功能。5.平臺(tái)無關(guān)性平臺(tái)無關(guān)性是指Java能運(yùn)行于不同的平臺(tái)。Java引進(jìn)虛擬機(jī)原理,并運(yùn)行于虛擬機(jī),實(shí)現(xiàn)不同平臺(tái)的Java接口之間。使</p><p&
26、gt; 2.2 MySQL數(shù)據(jù)庫的選用</p><p> MySQL是一個(gè)小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),故企業(yè)為減低網(wǎng)站成本選用該數(shù)據(jù)庫,具體特性如下:</p><p> 1.使用C和C++編寫,并使用了多種編譯器進(jìn)行測(cè)試,保證源代碼的可移植性 2.支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell
27、 Netware、OpenBSD、OS/2 Wrap、Solaris、Windows等多種操作系統(tǒng) 3.為多種編程語言提供了API。這些編程語言包括C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。 4.支持多線程,充分利用CPU資源 5.優(yōu)化的SQL查詢算法,有效地提高查詢速度 6.既能夠作為一個(gè)單獨(dú)的應(yīng)用程序應(yīng)用在客戶端服務(wù)器網(wǎng)絡(luò)環(huán)境中,也能夠作為一個(gè)庫而嵌入到其他的軟件中提供多
28、語言支持,常見的編碼如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作數(shù)據(jù)表名和數(shù)據(jù)列名 7.提供TCP/IP、ODBC和JDBC等多種數(shù)據(jù)庫連接途徑 8.提供用于管理、檢查、優(yōu)化數(shù)據(jù)庫操作的管理工具 9.可以處理擁有上千萬條記錄的大型數(shù)據(jù)庫</p><p> 此外,該系統(tǒng)還使用S.S.H框架,這些成熟的技術(shù)條件為該系統(tǒng)的建立提供了基礎(chǔ)。</p><p>
29、 2.3系統(tǒng)的開發(fā)運(yùn)行環(huán)境:</p><p> 開發(fā)語言: Java </p><p> 數(shù) 據(jù) 庫: MySQL</p><p> 開發(fā)工具: MyEclipse5.1 </p><p> 預(yù)期成果: 一個(gè)可擴(kuò)展的基于MVC模式的 BBS論壇</p><p> 2.4數(shù)據(jù)
30、流程圖的建立:</p><p> 數(shù)據(jù)流圖是對(duì)“數(shù)據(jù)”和“對(duì)數(shù)據(jù)的加工”兩方面來表達(dá)數(shù)據(jù)處理系統(tǒng)工作過程的一種圖形表示方法,具有直觀,易于被用戶和軟件人員雙方理解的一種表達(dá)系統(tǒng)功能的描述方式</p><p> 本系統(tǒng)共分為二種操作權(quán)限,分別為管理員、版主(普通用戶)和 游客:</p><p> 管理員:管理員可以管理用戶信息及設(shè)置用戶權(quán)限(普通用戶或版主),評(píng)
31、論類別管理,發(fā)表、回復(fù)、刪除評(píng)論及主題信息。</p><p> 版主(普通用戶):可以發(fā)表、回復(fù)主題信息。</p><p> 游客:只能查看語言類別,不能進(jìn)行其它操作。</p><p> 圖2-1 BBS論壇主體</p><p> 管理員操作版塊,即后臺(tái)管理版塊主要是:</p><p> 圖2-2 操作員界面
32、主體</p><p> 版主游客訪問界面,即系統(tǒng)前臺(tái)模塊兒主要流圖是:</p><p> 圖2-3前臺(tái)模塊主體</p><p><b> 2.5 數(shù)據(jù)字典</b></p><p> 數(shù)據(jù)字典是系統(tǒng)中各類數(shù)據(jù)描述的集合,是進(jìn)行詳細(xì)的數(shù)據(jù)收集和數(shù)據(jù)分析所獲得的主要成果,通常包括數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)和處理
33、過程五部分,它通過對(duì)數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)的定義來描述數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)的邏輯內(nèi)容。</p><p><b> BBS用戶信息表:</b></p><p><b> 表2-1主貼信息表</b></p><p><b> 表2-1附表</b></p><p> 表2-2板塊兒信息
34、表</p><p><b> 表2-3回帖信息表</b></p><p><b> 三.概念結(jié)構(gòu)設(shè)計(jì)</b></p><p> 3.1概念結(jié)構(gòu)設(shè)計(jì)概述:</p><p> 概念結(jié)構(gòu)設(shè)計(jì)就是將用戶需求抽象為概念模型的過程。它以用戶易于理解的形式表達(dá)信息,這種表達(dá)與數(shù)據(jù)庫系統(tǒng)的具體細(xì)節(jié)無關(guān),它所
35、涉及的數(shù)據(jù)獨(dú)立于具體的DBMS和計(jì)算機(jī)硬件,概念模型是現(xiàn)實(shí)世界到機(jī)器世界的一個(gè)中間層次。</p><p> 概念模型的主要特點(diǎn)如下所示:</p><p> 能真實(shí)充分的反應(yīng)現(xiàn)實(shí)世界中事務(wù)與事務(wù)之間的聯(lián)系,有豐富的語義表達(dá)能力,能滿足用戶對(duì)數(shù)據(jù)的各種處理要求。</p><p> 易于理解和交流,便于數(shù)據(jù)庫設(shè)計(jì)人員和用戶之間的溝通和交流。</p>&
36、lt;p> 易于改進(jìn),當(dāng)應(yīng)用環(huán)境和應(yīng)用需求改變時(shí),容易對(duì)概念模型進(jìn)行修改和擴(kuò)充。</p><p> 易于向關(guān)系、網(wǎng)狀、層次等各種數(shù)據(jù)模型轉(zhuǎn)換。</p><p> 3.2基于E-R(實(shí)體-聯(lián)系)模型的概念結(jié)構(gòu)設(shè)計(jì):</p><p> E-R圖提供了實(shí)體型、屬性和聯(lián)系的方法:</p><p> 實(shí)體:指客觀存在且相互區(qū)別的東西:&
37、lt;/p><p> 屬性:實(shí)體的每一個(gè)特性;</p><p> 聯(lián)系:現(xiàn)實(shí)世界中事務(wù)間的關(guān)系。有一對(duì)一,一對(duì)多和多對(duì)多的聯(lián)系。</p><p> 該系統(tǒng)的E-R圖如下所示:</p><p><b> 用戶E-R圖:</b></p><p> 圖3-1用戶板塊ER圖</p>&
38、lt;p><b> 主貼E-R圖如下:</b></p><p><b> 圖3-2主貼ER圖</b></p><p><b> 板塊E-R圖如下:</b></p><p> 圖3-3板塊論壇ER圖</p><p><b> 回帖E_R圖如下:</
39、b></p><p> 圖3-4回帖列表ER圖</p><p> 實(shí)體總體E_R圖如下所示:</p><p><b> 11</b></p><p><b> 1</b></p><p><b> 11</b></p>
40、<p><b> 1</b></p><p><b> n</b></p><p><b> nn</b></p><p><b> n</b></p><p><b> 1n</b></p>&
41、lt;p> 圖3-5實(shí)體總體ER圖</p><p> 四. 詳細(xì)設(shè)計(jì)和實(shí)現(xiàn)</p><p> 4.1 程序設(shè)計(jì):</p><p> 4.1.1創(chuàng)建數(shù)據(jù)庫:</p><p> create database db_bbs;</p><p> use db_bbs;</p><p&
42、gt; 4.1.2創(chuàng)建用戶表:</p><p> create table tb_user(</p><p> id int(11) auto_increment primary key not null,</p><p> username varchar(20) not null,</p><p> password varch
43、ar(20) not null,</p><p> sex varchar(2) not null,</p><p> email varchar(50) not null,</p><p> oicq varchar(20) default null,</p><p> signature varchar(300) default
44、null,</p><p> grade varchar(20) default null,</p><p> lxdz varchar(50),</p><p> tx varchar(30),</p><p> grzy varchar(50),</p><p> realname varchar(30)
45、</p><p><b> );</b></p><p> 4.1.3創(chuàng)建論壇版塊表:</p><p> create table tb_forum(</p><p> id int(11) auto_increment primary key not null,</p><p> fo
46、rumname varchar(20) not null,</p><p> manager varchar(100) default null,</p><p> createtime timestamp default current_timestamp</p><p><b> );</b></p><p>
47、 insert into tb_forum(forumname,manager)values('ASP','fish');</p><p> insert into tb_forum(forumname,manager)values('PHP','fish');</p><p> insert into tb_forum
48、(forumname,manager)values('C#','fish');</p><p> insert into tb_forum(forumname,manager)values('.NET','fish');</p><p> insert into tb_forum(forumname,manager)val
49、ues('VB','fish');</p><p> insert into tb_forum(forumname,manager)values('JSP','fish');</p><p> 4.1.4創(chuàng)建主貼表:</p><p> create table tb_topic(</p>
50、;<p> id int(4) auto_increment primary key not null,</p><p> content text,</p><p> author varchar(20) not null,</p><p> submittime timestamp(8) default current_timestamp
51、,</p><p> forumid int(4) default 0,</p><p> title varchar(300) not null,</p><p> xq varchar(30) not null,</p><p> rq int(4) default 0,</p><p> forumna
52、me varchar(20)</p><p><b> );</b></p><p> #insert into tb_topic(content,author,submittime,forumid,title)values('測(cè)試','快餓死的魚','2007-08-20','1','測(cè)試&
53、#39;);</p><p> 4.1.5創(chuàng)建回帖表:</p><p> create table tb_response(</p><p> id int(11) not null auto_increment primary key,</p><p> title varchar(300) not null,</p>
54、<p> content text,</p><p> author varchar(20) not null,</p><p> submittime timestamp default current_timestamp,</p><p> topicid int(4) not null,</p><p> topi
55、cname varchar(100),</p><p> xq varchar(20) not null</p><p><b> );</b></p><p><b> 4.2 操作過程:</b></p><p> 附加數(shù)據(jù)庫MySQL</p><p> (1)將
56、TM\09\Database文件夾中sql.sql放入mysql目錄下的bin 文件中,選擇“開始”/“所有程序”/“MySQL”/“MySQL Command Line Client”命令,</p><p> ?。?)將打開MySQL數(shù)據(jù)庫的Command Line Client窗口,在該窗口中,輸入密碼并按下〈Enter〉鍵時(shí),進(jìn)入數(shù)據(jù)庫在命令行輸入source sql.sql。</p><
57、;p><b> 發(fā)布與運(yùn)行</b></p><p> (1)將\TM\09\bbs文件夾拷貝到MyEclipse的工作空間中。</p><p> ?。?)啟動(dòng)MyEclipse。</p><p> ?。?)選擇“文件”/“導(dǎo)入”菜單項(xiàng),展開“常規(guī)”節(jié)點(diǎn),選擇“現(xiàn)有項(xiàng)目到工作空間中”子節(jié)點(diǎn),如圖1.1所示。</p><
58、;p> 圖4-1 “導(dǎo)入”窗口</p><p> ?。?)單擊【下一步】按鈕,單擊【瀏覽】按鈕,選擇程序所在目錄,然后勾選“將項(xiàng)目復(fù)制到工作空間中”復(fù)選框,如圖1.2所示。</p><p> 圖4-2 “導(dǎo)入”窗口</p><p> (5)單擊【完成】按鈕。</p><p> (6)添加Struts環(huán)境參見本章文檔9.3.5節(jié)
59、中的第1小節(jié)。</p><p> ?。?)為MyEclipse配置Tomcat服務(wù)器。</p><p> ?。?)添加MySQL驅(qū)動(dòng)包,請(qǐng)參見本章文檔9.3.5節(jié)中的第3小節(jié)。</p><p> ?。?)單擊工具欄的“”按鈕,將彈出如圖1.3所示的對(duì)話框。這個(gè)對(duì)話框是項(xiàng)目發(fā)布對(duì)話框,在對(duì)話框的“Project”下拉選擇框中選擇本系統(tǒng)的項(xiàng)目名稱“bbs”,單擊Add按
60、鈕進(jìn)行項(xiàng)目發(fā)布的設(shè)置。</p><p> 圖4-3 MyEclipse項(xiàng)目發(fā)布對(duì)話框</p><p> ?。?0)在彈出如圖1.4所示的對(duì)話框中,選擇“Server”下拉選擇框中的“Tomcat 5”服務(wù)器,單擊“完成”按鈕程序?qū)⒆詣?dòng)發(fā)布到服務(wù)器中。如果需要重新發(fā)布項(xiàng)目,可以單擊Redeploy按鈕。</p><p> 圖4-4 New Deployment
61、</p><p> ?。?1)單擊工具欄中按鈕右側(cè)的小箭頭,在彈出的菜單中選擇“Tomcat 5”/“Start”菜單項(xiàng),如圖1.5所示。這樣可以在MyEclipse中啟動(dòng)Web服務(wù)器。</p><p> 圖4-5 服務(wù)器運(yùn)行菜單</p><p> ?。?2)啟動(dòng)服務(wù)器之后,在瀏覽器的地址欄中輸入程序的訪問路徑,例如“http://localhost:8080/
62、bbs”,就可以訪問網(wǎng)站內(nèi)容。</p><p> 首先單擊“注冊(cè)用戶”導(dǎo)航按鈕,注冊(cè)用戶名和密碼,成為本站會(huì)員。訪問界面如下:</p><p><b> 圖4-6論壇主界面</b></p><p> 成為本論壇會(huì)員后,輸入用戶名及密碼,進(jìn)行登錄到普通用戶操作頁面,如下圖所示。在該頁面中用戶可以發(fā)表主題,查看主題及回復(fù)信息。</p&g
63、t;<p> 若為管理員,單擊“管理員登錄”導(dǎo)航按鈕,進(jìn)入到管理員操作頁面,如圖4-7所示。在該頁面中,管理員可以管理用戶信息、欄目、主題及主題信息。</p><p> 管理員的后臺(tái)操作界面如下圖所示:</p><p><b> 小部分源代碼如下:</b></p><p><b> /*</b><
64、;/p><p> * Generated by MyEclipse Struts</p><p> * Template path: templates/java/JavaClass.vtl</p><p><b> */</b></p><p> package com.wsy.struts.form;</p
65、><p> import javax.servlet.http.HttpServletRequest;</p><p> import org.apache.struts.action.ActionErrors;</p><p> import org.apache.struts.action.ActionForm;</p><p> i
66、mport org.apache.struts.action.ActionMapping;</p><p><b> /** </b></p><p> * MyEclipse Struts</p><p> * Creation date: 11-06-2007</p><p><b> * <
67、/b></p><p> * XDoclet definition:</p><p> * @struts.form name="ForumForm"</p><p><b> */</b></p><p> public class ForumForm extends ActionFo
68、rm {</p><p><b> /*</b></p><p> * Generated fields</p><p><b> */</b></p><p> /** forumid property */</p><p> private String for
69、umid; //論壇id</p><p> /** forumname property */</p><p> private String forumname;//論壇名稱</p><p><b> /*</b></p><p> * Generated Me
70、thods</p><p><b> */</b></p><p> private int pageid=0;</p><p> private String name;</p><p> public String getName() {</p><p> return name;&
71、lt;/p><p><b> }</b></p><p> public void setName(String name) {</p><p> this.name = name;</p><p><b> }</b></p><p> public int getP
72、ageid() {</p><p> return pageid;</p><p><b> }</b></p><p> public void setPageid(int pageid) {</p><p> this.pageid = pageid;</p><p><b>
73、; }</b></p><p><b> /** </b></p><p> * Method validate</p><p> * @param mapping</p><p> * @param request</p><p> * @return ActionErr
74、ors</p><p><b> */</b></p><p> public ActionErrors validate(ActionMapping mapping,</p><p> HttpServletRequest request) {</p><p> // TODO Auto-generated m
75、ethod stub</p><p> return null;</p><p><b> }</b></p><p><b> /** </b></p><p> * Method reset</p><p> * @param mapping</p>
76、<p> * @param request</p><p><b> */</b></p><p> public void reset(ActionMapping mapping, HttpServletRequest request) {</p><p> // TODO Auto-generated method s
77、tub</p><p><b> }</b></p><p><b> /** </b></p><p> * Returns the forumid.</p><p> * @return String</p><p><b> */</b>
78、</p><p> public String getForumid() {</p><p> return forumid;</p><p><b> }</b></p><p><b> /** </b></p><p> * Set the forumid.&
79、lt;/p><p> * @param forumid The forumid to set</p><p><b> */</b></p><p> public void setForumid(String forumid) {</p><p> this.forumid = forumid;</p>
80、<p><b> }</b></p><p><b> /** </b></p><p> * Returns the forumna</p><p><b> 數(shù)據(jù)庫的實(shí)施與維護(hù)</b></p><p> 5.1數(shù)據(jù)庫的試運(yùn)行:</p>
81、<p> 應(yīng)用程序調(diào)試完成,就可以開始數(shù)據(jù)庫的試運(yùn)行,數(shù)據(jù)庫試運(yùn)行也成為聯(lián)合運(yùn)行,其主要工作包括:</p><p> 功能調(diào)試。即實(shí)際運(yùn)行應(yīng)用程序,執(zhí)行對(duì)數(shù)據(jù)庫的各種操作,測(cè)試應(yīng)用程序的各種功能。</p><p> 性能測(cè)試。即測(cè)量系統(tǒng)的性能指標(biāo),分析是否符合設(shè)計(jì)目標(biāo)。</p><p><b> 查詢用戶表:</b></
82、p><p> select* from BBSUsers</p><p> 圖5-1 查詢版塊表</p><p> select* from BBSSection</p><p> 圖5-2發(fā)帖用戶查詢表</p><p> --近一周用戶發(fā)帖排名</p><p> --根據(jù)系統(tǒng)日期向前推
83、7天,之內(nèi)的發(fā)帖數(shù)排名前2名</p><p><b> --顯示中文列名</b></p><p> select top 2 TUID as 用戶ID ,count(*) as 發(fā)帖數(shù)</p><p> from bbstopic</p><p> where datediff(dd,TTime,getdate(
84、))<=7</p><p> group by tuid</p><p> --查詢用戶所發(fā)帖子的最高和最低回帖數(shù)</p><p> select tuid as 用戶ID,max(TReplyCount) 最多回帖數(shù),min(TReplyCount) as 最低回帖數(shù)</p><p> from bbstopic,bbsrep
85、ly</p><p> group by tuid </p><p><b> --查看用戶狀態(tài)</b></p><p> select UName as 姓名,URegDate as 注冊(cè)日期,Ustate as 用戶狀態(tài)</p><p> from BBSUsers</p><p>
86、 where UState = 1 or UState = 3</p><p> --按回帖時(shí)間的降序顯示所有回帖標(biāo)題與回帖時(shí)間</p><p> select RTopic as 回帖標(biāo)題,RTime as 回帖時(shí)間</p><p> from BBSreply</p><p> order by RTime desc</p&
87、gt;<p> 5.2 數(shù)據(jù)庫的維護(hù)</p><p> 在數(shù)據(jù)庫的運(yùn)行階段,由于系統(tǒng)還不穩(wěn)定,硬、軟件故障隨時(shí)都可能發(fā)生。而且系統(tǒng)的操作人員對(duì)系統(tǒng)還不是很熟悉,誤操作也不可避免,因此必須做好數(shù)據(jù)庫的轉(zhuǎn)儲(chǔ)和回復(fù)工作,盡量減少對(duì)數(shù)據(jù)庫的破壞。對(duì)數(shù)據(jù)庫經(jīng)常性的維護(hù)工作主要由DBA完成的,它包括以下內(nèi)容:</p><p> 數(shù)據(jù)庫的轉(zhuǎn)儲(chǔ)和恢復(fù)。</p><p
88、> 轉(zhuǎn)儲(chǔ)和恢復(fù)是系統(tǒng)正式運(yùn)行后最重要的維護(hù)工作之一,DBA要針對(duì)不同的應(yīng)用要求制定不同的轉(zhuǎn)儲(chǔ)計(jì)劃,定期對(duì)數(shù)據(jù)庫和日志文件進(jìn)行備份,以保障一旦發(fā)生故障,能利用數(shù)據(jù)庫備份及日志文件盡快將數(shù)據(jù)恢復(fù)到某一種狀態(tài)。</p><p> 數(shù)據(jù)庫安全性、完整性控制。</p><p> DBA必須對(duì)數(shù)據(jù)庫的安全性和完整性控制負(fù)責(zé)任。根據(jù)用戶的實(shí)際需要授予不同的操作權(quán)限。</p>&
89、lt;p> ?。?)數(shù)據(jù)庫性能的監(jiān)督、分析和改進(jìn)</p><p> 在系統(tǒng)運(yùn)行過程中,DBA利用監(jiān)測(cè)系統(tǒng)性能的工具得到一系列系統(tǒng)參數(shù)的值,通過分析這些數(shù)據(jù)來判斷當(dāng)前系統(tǒng)是否處于最佳狀態(tài)。</p><p> 數(shù)據(jù)庫的重組織和 重構(gòu)造。</p><p> 數(shù)據(jù)庫運(yùn)行一段時(shí)間后,由于記錄的不斷增加、刪除和修改,會(huì)使數(shù)據(jù)庫的物理存儲(chǔ)變壞,從而降低數(shù)據(jù)庫的存儲(chǔ)空間
90、利用率和數(shù)據(jù)的存儲(chǔ)速度,會(huì)是數(shù)據(jù)庫的性能下降,因此要按原計(jì)劃要求重新安排存儲(chǔ)位置、回收垃圾、減少指針鏈。提高系統(tǒng)性能。 </p><p> 六. 個(gè)人小結(jié)與體會(huì)</p><p> 在選擇這個(gè)課程設(shè)計(jì)題目前,覺得應(yīng)該蠻簡(jiǎn)單的吧,結(jié)果在實(shí)際設(shè)計(jì)的過程中遇到了很多問題,覺得自己學(xué)的東西太少太少,通過不斷的翻書和請(qǐng)教其他同學(xué)和老師才算是基本上已經(jīng)可以把幾個(gè)基本的實(shí)體表建立起來了,基本完
91、成了BBS系統(tǒng)的開發(fā)和設(shè)計(jì),完成了用戶模塊、帖子模塊和后臺(tái)管理模塊的開發(fā),并且基本實(shí)現(xiàn)了前期所制定的功能。在這個(gè)過程中當(dāng)在插入數(shù)據(jù)的時(shí)出現(xiàn)無法插入的情況,檢查發(fā)現(xiàn),然來定義屬性變量的時(shí)候給的內(nèi)存空間不夠,修改后正常插入。在這個(gè)摸索和學(xué)習(xí)的過程中,BBS系統(tǒng)不斷的設(shè)計(jì)和更改,逐漸的趨于成熟。當(dāng)然,該系統(tǒng)在很多方面還存在缺點(diǎn),希望通過更多的學(xué)習(xí),在今后可以進(jìn)行更好的改進(jìn),使系統(tǒng)性能更好更安全。</p><p> 通
92、過兩周的課程設(shè)計(jì),加深了對(duì)數(shù)據(jù)庫設(shè)計(jì)的理解與記憶,以及對(duì)于JAVA語言的進(jìn)一步熟悉,這次課程設(shè)計(jì)讓我懂得了只有不斷的實(shí)踐,理論聯(lián)系實(shí)際,才可以從中收獲的更多。</p><p> 我會(huì)在以后的學(xué)習(xí)中更加認(rèn)真,更加深入,希望可以有所進(jìn)步與更大的提高。</p><p><b> 參考文獻(xiàn):</b></p><p> 車?yán)?《數(shù)據(jù)庫應(yīng)用技術(shù)》20
93、10版,清華大學(xué)出版社</p><p> 孫鑫 《Java Web開發(fā)詳解》[M].電子工業(yè)出版社,2006.189-274</p><p> 張宏武 《java2高級(jí)程序設(shè)計(jì)》[M]中科多媒體出版社 2001年11月 85-90</p><p> 孫衛(wèi)琴 《精通struts》[M]電子工業(yè)出版社 2004年8月 50-70</p>&l
94、t;p> 陳學(xué)平 《動(dòng)態(tài)數(shù)據(jù)庫網(wǎng)頁設(shè)計(jì)與制作》 電子工業(yè)出版社 </p><p> Jim Arlow 《UML2.0 and the Unified Process》[M]機(jī)械工業(yè)出版社 2006年6月 30-40</p><p> 熊節(jié)、林儀明、張凱峰、陳玉泉等主編[《CSDN社區(qū)電子雜志——Java雜志》 創(chuàng)刊號(hào)] </p><p
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫原理與應(yīng)用課程設(shè)計(jì)---bbs論壇數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)---數(shù)據(jù)庫
- 數(shù)據(jù)庫課程設(shè)計(jì)--數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--快餐訂餐系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--數(shù)據(jù)庫設(shè)計(jì)—公司管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計(jì)快餐訂餐系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--數(shù)據(jù)庫系統(tǒng)原理
- 數(shù)據(jù)庫課程設(shè)計(jì)---網(wǎng)上拍賣數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)---機(jī)房管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--cd唱片數(shù)據(jù)庫設(shè)計(jì)
- oracle數(shù)據(jù)庫課程設(shè)計(jì)---在線考試系統(tǒng)數(shù)據(jù)庫
- 數(shù)據(jù)庫課程設(shè)計(jì)--數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--工資管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫原理課程設(shè)計(jì)---教室管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)報(bào)告--設(shè)備儀器數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--圖書借閱管理數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)---旅行社數(shù)據(jù)庫
- 數(shù)據(jù)庫課程設(shè)計(jì)論文---汽車銷售管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--超市會(huì)員管理系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫原理課程設(shè)計(jì)---圖書管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論