資源描述:
《論文bbs論壇系統(tǒng)設(shè)計》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、第1章 緒論1.1選題背景Internet是目前世界上最大的計算機(jī)互聯(lián)網(wǎng)絡(luò),它遍布全球,將世界各地各種規(guī)模的網(wǎng)絡(luò)連接成一個整體。作為Internet上一種先進(jìn)的,易于被人們所接受的信息檢索手段,WorldWideWeb(簡稱WWW)發(fā)展十分迅速,成為目前世界上最大的信息資源寶庫。據(jù)估計,目前Internet上已有上百萬個Web站點,其內(nèi)容范圍跨越了教育科研、文化事業(yè)、金融、商業(yè)、新聞出版、娛樂、體育等各個領(lǐng)域,其用戶群十分龐大,因此,建設(shè)一個好的Web站點對于一個機(jī)構(gòu)的發(fā)展十分重要。近年來,隨著網(wǎng)絡(luò)用戶要求的不斷提高及計算機(jī)科學(xué)的迅速發(fā)展,特別是數(shù)據(jù)庫技術(shù)在Internet中的廣泛
2、應(yīng)用,Web站點向用戶提供的服務(wù)將越來越豐富,越來越人性化。我們發(fā)現(xiàn)這樣一個事實,一個用戶在訪問一個網(wǎng)站時一般來講只對該網(wǎng)站的部分內(nèi)容感性趣,而且這種興趣會持續(xù)一段時間。這點啟發(fā)了我們,如果能根據(jù)用戶的喜好為不同的用戶顯示其個性化的頁面,即著重顯示該用戶感興趣的內(nèi)容,將為用戶節(jié)約大量的檢索時間,而且這樣的網(wǎng)頁顯然是更具有吸引力的。一些站點已經(jīng)在這方面作出了一定的嘗試,通常采用的方法是,在用戶登陸時為其提供一系列的選項,使用戶能夠?qū)φ军c進(jìn)行一些自主的設(shè)置。這樣做能夠使站點呈現(xiàn)一定程度的個性化,但是對用戶來講,還是比較煩瑣,而且在用戶了解一個站點前讓其對站點進(jìn)行設(shè)置,其結(jié)果未免有些粗糙。
3、于是我們構(gòu)想了這樣一種方案,對用戶登陸后的動作進(jìn)行跟蹤,分析,發(fā)掘用戶點擊的規(guī)律,即用戶先后點擊的關(guān)聯(lián)規(guī)則,這樣,在用戶點擊一個主題(鏈接)之后,系統(tǒng)能夠自動生成一頁面,其中包含了該主題下用戶經(jīng)常關(guān)注的內(nèi)容(若干鏈接),這樣便在無須用戶作出任何額外工作的情況下實現(xiàn)了為用戶量身訂做的個性化頁面。要實現(xiàn)這樣的功能,離不開后臺數(shù)據(jù)庫的支持。用戶驗證信息,收集到的用戶點擊信息,主題層次信息,分析得出的關(guān)聯(lián)規(guī)則表等大量的數(shù)據(jù)都由數(shù)據(jù)庫管理系統(tǒng)管理。本文中數(shù)據(jù)庫服務(wù)器端采用了MySql數(shù)據(jù)庫作為JDBC數(shù)據(jù)源,并以先進(jìn)的JDBC技術(shù)進(jìn)行數(shù)據(jù)庫存取等操作,使Web與數(shù)據(jù)庫緊密聯(lián)系起來。整個個性化頁
4、面生成系統(tǒng)主要由使用Dreamweaver_MX開發(fā)的關(guān)聯(lián)規(guī)則采掘系統(tǒng)和利用Freemarker+Tomcat技術(shù)實現(xiàn)的個性化Web頁面生成器兩部分組成。關(guān)聯(lián)規(guī)則采掘系統(tǒng)對數(shù)據(jù)庫中的歷史記錄進(jìn)行分析,產(chǎn)生用戶關(guān)聯(lián)規(guī)則表;頁面生成器則負(fù)責(zé)記錄用戶行為和根據(jù)關(guān)聯(lián)規(guī)則表動態(tài)生成用戶個性化Web頁面。二者通過數(shù)據(jù)庫服務(wù)器和Web服務(wù)器連接。本文作者主要完成Web服務(wù)器端的用戶管理、帖子管理、版面管理、數(shù)據(jù)庫管理、瀏覽和查找、短消息功能等設(shè)計、實現(xiàn)與完善以及整個實驗網(wǎng)站的組織建立和測試工作。第2章 系統(tǒng)技術(shù)及運行環(huán)境2.1Freemarker技術(shù)簡介FreeMarker允許Javaservl
5、et保持圖形設(shè)計同應(yīng)用程序邏輯的分離,這是通過在模板中密封HTML完成的。模板用servlet提供的數(shù)據(jù)動態(tài)地生成HTML。模板語言是強(qiáng)大的直觀的,編譯器速度快,輸出接近靜態(tài)HTML頁面的速度。FreeMarker是一個模板引擎,一個基于模板生成文本輸出的通用工具,使用純Java編寫。FreeMarker被設(shè)計用來生成HTMLWeb頁面,特別是基于MVC模式的應(yīng)用程序。雖然FreeMarker具有一些編程的能力,但通常由Java程序準(zhǔn)備要顯示的數(shù)據(jù),由FreeMarker生成頁面,通過模板顯示準(zhǔn)備的數(shù)據(jù)。FreeMarker不是一個Web應(yīng)用框架,而適合作為Web應(yīng)用框架一個組件。F
6、reeMarker與容器無關(guān),因為它并不知道HTTP或Servlet;FreeMarker同樣可以應(yīng)用于非Web應(yīng)用程序環(huán)境。FreeMarker更適合作為Model2框架(如Struts)的視圖組件,你也可以在模板中使用JSP標(biāo)記庫,F(xiàn)reeMarker是免費的。Freemarker程序的優(yōu)點:1、通用目標(biāo)(1)能夠生成各種文本:HTML、XML、RTF、Java源代碼等等。(2)易于嵌入到你的產(chǎn)品中:輕量級;不需要Servlet環(huán)境。(3)插件式模板載入器:可以從任何源載入模板,如本地文件、數(shù)據(jù)庫等等。(4)你可以按你所需生成文本:保存到本地文件;作為Email發(fā)送;從Web應(yīng)用
7、程序發(fā)送它返回給Web瀏覽器。2、強(qiáng)大的模板語言(1)所有常用的指令:include、if/elseif/else、循環(huán)結(jié)構(gòu)。(2)在模板中創(chuàng)建和改變變量。(3)幾乎在任何地方都可以使用復(fù)雜表達(dá)式來指定值。(4)命名的宏,可以具有位置參數(shù)和嵌套內(nèi)容。(5)名字空間有助于建立和維護(hù)可重用的宏庫,或者將一個大工程分成模塊,而不必?fù)?dān)心名字沖突。(6)輸出轉(zhuǎn)換塊:在嵌套模板片段生成輸出時,轉(zhuǎn)換HTML轉(zhuǎn)義、壓縮、語法高亮等等;你可以定義自己的轉(zhuǎn)換。?3、通用數(shù)據(jù)模