數(shù)據(jù)庫畢業(yè)論文_第1頁
已閱讀1頁,還剩34頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p><b>  第1章  緒論</b></p><p><b>  1.1選題背景</b></p><p>  Internet是目前世界上最大的計算機互聯(lián)網(wǎng)絡(luò),它遍布全球,將世界各地各種規(guī)模的網(wǎng)絡(luò)連接成一個整體。作為Internet上一種先進的,易于被人們所接受的信息檢索手段,World Wide Web(簡稱WWW)發(fā)展十分迅速

2、,成為目前世界上最大的信息資源寶庫。據(jù)估計,目前Internet上已有上百萬個Web站點,其內(nèi)容范圍跨越了教育科研、文化事業(yè)、金融、商業(yè)、新聞出版、娛樂、體育等各個領(lǐng)域,其用戶群十分龐大,因此,建設(shè)一個好的Web站點對于一個機構(gòu)的發(fā)展十分重要。近年來,隨著網(wǎng)絡(luò)用戶要求的不斷提高及計算機科學的迅速發(fā)展,特別是數(shù)據(jù)庫技術(shù)在Internet中的廣泛應用,Web站點向用戶提供的服務(wù)將越來越豐富,越來越人性化。</p><p&

3、gt;  我們發(fā)現(xiàn)這樣一個事實,一個用戶在訪問一個網(wǎng)站時一般來講只對該網(wǎng)站的部分內(nèi)容感性趣,而且這種興趣會持續(xù)一段時間。這點啟發(fā)了我們,如果能根據(jù)用戶的喜好為不同的用戶顯示其個性化的頁面,即著重顯示該用戶感興趣的內(nèi)容,將為用戶節(jié)約大量的檢索時間,而且這樣的網(wǎng)頁顯然是更具有吸引力的。一些站點已經(jīng)在這方面作出了一定的嘗試,通常采用的方法是,在用戶登陸時為其提供一系列的選項,使用戶能夠?qū)φ军c進行一些自主的設(shè)置。這樣做能夠使站點呈現(xiàn)一定程度的個

4、性化,但是對用戶來講,還是比較煩瑣,而且在用戶了解一個站點前讓其對站點進行設(shè)置,其結(jié)果未免有些粗糙。于是我們構(gòu)想了這樣一種方案,對用戶登陸后的動作進行跟蹤,分析,發(fā)掘用戶點擊的規(guī)律,即用戶先后點擊的關(guān)聯(lián)規(guī)則,這樣,在用戶點擊一個主題(鏈接)之后,系統(tǒng)能夠自動生成一頁面,其中包含了該主題下用戶經(jīng)常關(guān)注的內(nèi)容(若干鏈接),這樣便在無須用戶作出任何額外工作的情況下實現(xiàn)了為用戶量身訂做的個性化頁面。</p><p>  

5、要實現(xiàn)這樣的功能,離不開后臺數(shù)據(jù)庫的支持。用戶驗證信息,收集到的用戶點擊信息,主題層次信息,分析得出的關(guān)聯(lián)規(guī)則表等大量的數(shù)據(jù)都由數(shù)據(jù)庫管理系統(tǒng)管理。本文中數(shù)據(jù)庫服務(wù)器端采用了MySql數(shù)據(jù)庫作為JDBC數(shù)據(jù)源,并以先進的JDBC技術(shù)進行數(shù)據(jù)庫存取等操作,使Web與數(shù)據(jù)庫緊密聯(lián)系起來。</p><p>  整個個性化頁面生成系統(tǒng)主要由使用Dreamweaver_MX開發(fā)的關(guān)聯(lián)規(guī)則采掘系統(tǒng)和利用Freemarker+

6、Tomcat技術(shù)實現(xiàn)的個性化Web頁面生成器兩部分組成。關(guān)聯(lián)</p><p>  規(guī)則采掘系統(tǒng)對數(shù)據(jù)庫中的歷史記錄進行分析,產(chǎn)生用戶關(guān)聯(lián)規(guī)則表;頁面生成器則負責記錄用戶行為和根據(jù)關(guān)聯(lián)規(guī)則表動態(tài)生成用戶個性化Web頁面。二者通過數(shù)據(jù)庫服務(wù)器和Web服務(wù)器連接。</p><p>  本文作者主要完成Web服務(wù)器端的用戶管理、帖子管理、版面管理、數(shù)據(jù)庫管理、瀏覽和查找、短消息功能等設(shè)計、實現(xiàn)與完

7、善以及整個實驗網(wǎng)站的組織建立和測試工作。</p><p>  第2章  系統(tǒng)技術(shù)及運行環(huán)境</p><p>  2.1 Freemarker技術(shù)簡介</p><p>  FreeMarker允許Java servlet保持圖形設(shè)計同應用程序邏輯的分離,這是通過在模板中密封HTML完成的。模板用servlet提供的數(shù)據(jù)動態(tài)地生成 HTML。模板語言是強大的直觀的,編譯

8、器速度快,輸出接近靜態(tài)HTML頁面的速度。</p><p>  FreeMarker是一個模板引擎,一個基于模板生成文本輸出的通用工具,使用純Java編寫。</p><p>  FreeMarker被設(shè)計用來生成HTML Web頁面,特別是基于MVC模式的應用程序。</p><p>  雖然FreeMarker具有一些編程的能力,但通常由Java程序準備要顯示的數(shù)據(jù)

9、,由FreeMarker生成頁面,通過模板顯示準備的數(shù)據(jù)。</p><p>  FreeMarker不是一個Web應用框架,而適合作為Web應用框架一個組件。</p><p>  FreeMarker與容器無關(guān),因為它并不知道HTTP或Servlet;FreeMarker同樣可以應用于非Web應用程序環(huán)境。</p><p>  FreeMarker更適合作為Mode

10、l2框架(如Struts)的視圖組件,你也可以在模板中使用JSP標記庫,F(xiàn)reeMarker是免費的。</p><p>  Freemarker程序的優(yōu)點:</p><p><b>  1、通用目標</b></p><p>  (1)能夠生成各種文本:HTML、XML、RTF、Java源代碼等等。</p><p> ?。?/p>

11、2)易于嵌入到你的產(chǎn)品中:輕量級;不需要Servlet環(huán)境。</p><p> ?。?)插件式模板載入器:可以從任何源載入模板,如本地文件、數(shù)據(jù)庫等等。</p><p> ?。?)你可以按你所需生成文本:保存到本地文件;作為Email發(fā)送;從Web應用程序發(fā)送它返回給Web瀏覽器。</p><p><b>  2、強大的模板語言</b><

12、/p><p> ?。?)所有常用的指令:include、if/elseif/else、循環(huán)結(jié)構(gòu)。</p><p>  (2)在模板中創(chuàng)建和改變變量。</p><p> ?。?)幾乎在任何地方都可以使用復雜表達式來指定值。</p><p>  (4)命名的宏,可以具有位置參數(shù)和嵌套內(nèi)容。</p><p> ?。?)名字空間有

13、助于建立和維護可重用的宏庫,或者將一個大工程分成模塊,而不必擔心名字沖突。</p><p> ?。?)輸出轉(zhuǎn)換塊:在嵌套模板片段生成輸出時,轉(zhuǎn)換HTML轉(zhuǎn)義、壓縮、語法高亮等等;你可以定義自己的轉(zhuǎn)換。 </p><p><b>  3、通用數(shù)據(jù)模</b></p><p>  (1)FreeMarker不是直接反射到Java對象,Jav

14、a對象通過插件式對象封裝,以變量方式在模板中顯示。</p><p>  (2)你可以使用抽象(接口)方式表示對象(JavaBean、XML文檔、SQL查詢結(jié)果集等等),告訴模板開發(fā)者使用方法,使其不受技術(shù)細節(jié)的打擾 。</p><p><b>  4、為Web準備</b></p><p>  (1)在模板語言中內(nèi)建處理典型Web相關(guān)任

15、務(wù)(如HTML轉(zhuǎn)義)的結(jié)構(gòu)。</p><p>  (2)能夠集成到Model2 Web應用框架中作為JSP的替代。</p><p>  (3)支持JSP標記庫。</p><p>  (4)為MVC模式設(shè)計:分離可視化設(shè)計和應用程序邏輯;分離頁面設(shè)計和程序員。</p><p>  5、智能的國際化和本地化</p><p>

16、;  (1)字符集智能化(內(nèi)部使用UNICODE)。</p><p>  (2)數(shù)字格式本地化敏感。</p><p>  (3)日期和時間格式本地化敏感。</p><p>  (4)非US字符集可以用作標識(如變量名)。</p><p>  (5)多種不同語言的相同模板。</p><p>  6、強大的XML處理能力&

17、lt;/p><p>  (1)<#recurse> 和<#visit>指令(2.3版本)用于遞歸遍歷XML樹。</p><p>  (2)在模板中清楚和直覺的訪問XML對象模型。</p><p>  2.2 MySql技術(shù)簡介</p><p>  MySql就是關(guān)系數(shù)據(jù)庫開發(fā)工具,數(shù)據(jù)庫能匯集各種信息以供查詢,存儲和檢索。

18、那么什么叫數(shù)據(jù)庫呢?數(shù)據(jù)庫(Database)是由一些有意義和有關(guān)系的數(shù)據(jù)(data)所組合而成。一個數(shù)據(jù)庫中,包含了許多條記錄(Record),而每條記錄是由多個字段(Field)所組成,不同的字段存放這不同的數(shù)據(jù)。所以數(shù)據(jù)庫的嚴格定義</p><p>  是一組相關(guān)記錄的集合,而字段則是最基本的數(shù)據(jù)項,也是數(shù)據(jù)庫中最小的單位。在計算機中用來幫我們管理數(shù)據(jù)庫的系統(tǒng),我們稱之為數(shù)據(jù)庫管理管理系統(tǒng)(Database

19、 Management System DBMS)。數(shù)據(jù)庫管理系統(tǒng)是架構(gòu)在一個或多個數(shù)據(jù)庫之上,并針對數(shù)據(jù)庫中的數(shù)據(jù)進行管理運用。</p><p>  MySql 的優(yōu)點在于它能使用數(shù)據(jù)表示圖或自定義窗體收集信息,數(shù)據(jù)表示圖提供了一種類似于 Excel 的電子表格,可以使數(shù)據(jù)庫一目了然。另外,MySql 允許創(chuàng)建自定義報表用于打印或輸出數(shù)據(jù)庫中的信息。MySql也提供了數(shù)據(jù)存儲庫,可以使用桌面數(shù)據(jù)庫文件把數(shù)據(jù)庫文件

20、置于網(wǎng)絡(luò)文件服務(wù)器,與其他網(wǎng)絡(luò)用戶共享數(shù)據(jù)庫。如上所述,MySql 作為關(guān)系數(shù)據(jù)庫開發(fā)具備了許多優(yōu)點,可以在一個數(shù)據(jù)</p><p>  中同時擁有桌面數(shù)據(jù)庫的便利和關(guān)系數(shù)據(jù)庫的強大功能。</p><p>  2.3利用JDBC訪問數(shù)據(jù)庫</p><p>  JDBC(Java Data Base Connectivity,java數(shù)據(jù)庫連接)是一種用于執(zhí)行SQL語

21、句的Java API,可以為多種關(guān)系數(shù)據(jù)庫提供統(tǒng)一訪問,它由一組用Java語言編寫的類和接口組成。JDBC為工具/數(shù)據(jù)庫開發(fā)人員提供了一個標準的API,據(jù)此可以構(gòu)建更高級的工具和接口,使數(shù)據(jù)庫開發(fā)人員能夠用純 Java API 編寫數(shù)據(jù)庫應用程序,同時,JDBC也是個商標名。</p><p>  有了JDBC,向各種關(guān)系數(shù)據(jù)發(fā)送SQL語句就是一件很容易的事。換言之,有了JDBC API,就不必為訪問Sybase數(shù)

22、據(jù)庫專門寫一個程序,為訪問Oracle數(shù)據(jù)庫又專門寫一個程序,或為訪問Informix數(shù)據(jù)庫又編寫另一個程序等等,程序員只需用JDBC API寫一個程序就夠了,它可向相應數(shù)據(jù)庫發(fā)送SQL調(diào)用。同時,將Java語言和JDBC結(jié)合起來使程序員不必為不同的平臺編寫不同的應用程序,只須寫一遍程序就可以讓它在任何平臺上運行,這也是Java語言“編寫一次,處處運行”的優(yōu)勢。</p><p>  Java數(shù)據(jù)庫連接體系結(jié)構(gòu)是用

23、于Java應用程序連接數(shù)據(jù)庫的標準方法。JDBC對Java程序員而言是API,對實現(xiàn)與數(shù)據(jù)庫連接的服務(wù)提供商而言是接口模型。作為API,JDBC為程序開發(fā)提供標準的接口,并為數(shù)據(jù)庫廠商及第三方中間件廠商實現(xiàn)與數(shù)據(jù)庫的連接提供了標準方法。JDBC使用已有的SQL標準并支持與其它數(shù)據(jù)庫連接標準,如ODBC之間的橋接。JDBC實現(xiàn)了所有這些面向標準的目標并且具有簡單、嚴格類型定義且高性能實現(xiàn)的接口?! ava 具有堅固、安全、易于使用、易于

24、理解和可從網(wǎng)絡(luò)上自動下載等特性,是編寫數(shù)據(jù)庫應用程序的杰出語言。所需要的只是 Java應用程序與各種不同數(shù)據(jù)庫之間進行對話的方法。而 JDBC 正是作為此種用途的機制,是應用程序和數(shù)據(jù)庫之間的橋梁。</p><p>  二、創(chuàng)建數(shù)據(jù)庫鏈接(Connection) </p><p>  鏈接用以保持一些關(guān)于正在訪問的數(shù)據(jù)的一些狀態(tài)信息,以及鏈接者信息。在本系統(tǒng)中如果要訪問數(shù)據(jù),必須首先創(chuàng)建與

25、數(shù)據(jù)庫的鏈接,其語法如下:</p><p>  Class.forName("com.mysql.jdbc.Driver");</p><p>  Connectionconn=DriverManager.getConnection("jdbc:mysql://localhost:3306/forum?user=root&password=123456

26、&autoReconnect=true");</p><p>  這條語句創(chuàng)建了鏈接對象Conn,接下來: </p><p>  Statement p = conn.createStatement();</p><p>  三、定義數(shù)據(jù)對象(Record Set)</p><p>  ResultSet rs = null

27、;</p><p><b>  四、操作數(shù)據(jù)庫</b></p><p>  我們通過調(diào)用鏈接對象的ExecuteQuery方法來將查詢結(jié)果返回給一個數(shù)據(jù)對象。例如:</p><p>  rs = p.executeQuery(“select * from class”);</p><p><b>  執(zhí)行查詢操

28、作</b></p><p>  或通過調(diào)用鏈接對象的Execute方法進行插入、刪除等操作</p><p><b>  例如:</b></p><p>  p.execute(“INSERT INTO tab1 VALUES(1,2)”);</p><p><b>  執(zhí)行插入操作</b>

29、;</p><p>  五、關(guān)閉數(shù)據(jù)對象和鏈接對象</p><p>  在使用了數(shù)據(jù)庫操作對象之后要關(guān)閉它,因為它使用了一定的服務(wù)器資源。通過調(diào)用方法close實現(xiàn)關(guān)閉,然后再釋放它。</p><p>  if (rs != null) {</p><p><b>  try {</b></p><p

30、>  rs.close();</p><p>  }catch (Exception e){ }</p><p><b>  }</b></p><p>  ‘關(guān)閉創(chuàng)建的數(shù)據(jù)對象</p><p>  if (p != null) {</p><p><b>  try {<

31、;/b></p><p>  p.close();</p><p>  }catch (Exception e) { }</p><p><b>  }</b></p><p>  if (conn != null) {</p><p><b>  try {</b>&

32、lt;/p><p>  conn.close();</p><p>  }catch (Exception e) { }</p><p><b>  }</b></p><p><b>  關(guān)閉創(chuàng)建的鏈接對象</b></p><p>  2.4 SQL語句簡介</p>

33、<p>  1,SQL 語句簡介</p><p>  SQL全稱是"結(jié)構(gòu)化查詢語言(Structured Query Language)",SQL包含4個</p><p><b>  部分:</b></p><p>  (1)數(shù)據(jù)查詢語言DQL-Data Query Language SELECT</p&

34、gt;<p>  (2)據(jù)操縱語言DQL-Data Manipulation Language INSERT, UPDATE, DELETE </p><p>  (3)數(shù)據(jù)定義語言DQL-Data Definition Language CREATE, ALTER, DROP</p><p>  (4)數(shù)據(jù)控制語言DQL-Data Control Language COMM

35、IT WORK, ROLLBACK </p><p><b>  2,SQL的優(yōu)點</b></p><p><b>  非過程化語言</b></p><p><b>  統(tǒng)一的語言</b></p><p>  SQL為許多任務(wù)提供了命令,包括:查詢數(shù)據(jù),數(shù)據(jù)更新,在表中插入記錄

36、,在表中修改記錄,在表中刪除記錄,建立,修改和刪除數(shù)據(jù)對象,控制對數(shù)據(jù)和數(shù)據(jù)對象的存取,保證數(shù)據(jù)庫一致性和完整性,以前的數(shù)據(jù)庫管理系統(tǒng)為</p><p>  上述各類操作提供單獨的語言,而SQL將全部任務(wù)統(tǒng)一在一種語言中。</p><p>  是所有關(guān)系數(shù)據(jù)庫的公共語言</p><p>  由于所有主要的關(guān)系數(shù)據(jù)庫管理系統(tǒng)都支持SQL語言,用戶可將使用SQL的技能從

37、一個RDBMS轉(zhuǎn)到另一個。所有用SQL編寫的程序都是可以移植的。SQL是大多數(shù)關(guān)系型數(shù)據(jù)庫用做查詢語言的語言。它是可以移植的,并且容易學習使用,但是所有SQL語句都必須由數(shù)據(jù)庫服務(wù)器獨立地執(zhí)行。這就意味著客戶端應用必須把每條查詢發(fā)送到數(shù)據(jù)庫服務(wù)器,等待它處理這個查詢,接收結(jié)果,做一些運算,然后給服務(wù)器發(fā)送另外一條查詢。所有這些東西都會產(chǎn)生進程間通訊,并且如果客戶端在另外一臺機器上甚至還會導致網(wǎng)絡(luò)開銷。</p><p&

38、gt;  2.5 Tomcat簡介</p><p>  1,Tomcat的安裝</p><p>  Aapche組織提供的WEB服務(wù)器組件TOMCAT的安裝方法,雙擊安裝文件,就會彈出如圖2-1所示的WINDOWS組件向?qū)υ捒?在其中選擇文件安裝目錄,然后單擊下一步按鈕,隨后根據(jù)系統(tǒng)提示一步一步的操作即完成TOMCAT的安裝。</p><p>  圖2-1 TOM

39、CAT安裝</p><p>  2,TOMCAT基本設(shè)置</p><p>  在安裝過程中,配置tomcat的基本設(shè)置,設(shè)置訪問端口為80,設(shè)置admin用戶的訪問密碼,如下圖所示,虛擬目錄的設(shè)置及其他設(shè)置,需設(shè)置于tomcat下的</p><p>  conf/server.xml文件</p><p>  圖2-2 Tomcat基本設(shè)置&l

40、t;/p><p><b>  2.6 運行環(huán)境</b></p><p>  為了保證成績管理系統(tǒng)運行的效率和可靠性,服務(wù)器應具有較高的軟硬件配置,客戶端的要求不是很高。此應用程序可廣泛運行于國際互聯(lián)網(wǎng)即Internet,也可適用于內(nèi)部的局域網(wǎng)。其運行要求如下:</p><p><b>  軟件環(huán)境:</b></p>

41、<p>  客戶端: Windows95/98/2000/XP,Internet Explorer(IE)等。</p><p>  服務(wù)器端:Windows NT/Windows2000,TOMCAT5.0及其以上版本,IE等;或者Windows 2003 SERVER,Personal Web Server(PWS),IE等。</p><p>  數(shù)據(jù)庫:采用MySql5.

42、0,運行于服務(wù)器端。</p><p><b>  最低硬件環(huán)境:</b></p><p>  服務(wù)器 CPU:PIII 500以上 ,內(nèi)存:512M以上。</p><p>  客戶機 CPU:P200MMX以上,內(nèi)存:32M以上。</p><p><b>  第3章 需求分析</b></p&

43、gt;<p><b>  3.1 編寫目的</b></p><p>  在網(wǎng)絡(luò)技術(shù)逐漸滲入社會生活各個層面的今天,以前網(wǎng)站上的論壇管理系統(tǒng)要用戶登陸以后才能進行相關(guān)訪問及互動。而隨著網(wǎng)絡(luò)互聯(lián)技術(shù)的進步,現(xiàn)在網(wǎng)站投票只需打開網(wǎng)頁就可進行論壇留言。論壇對象是很多的,各個層次都可進行論壇訪問,大至國家領(lǐng)導,小至一個普通干部,訪問和留言從到指定用戶進行表格到現(xiàn)在通過網(wǎng)絡(luò)直接點擊相應就可

44、進行。網(wǎng)上論壇管理系統(tǒng)可解決游客訪問及留言,致使現(xiàn)在幾乎各個網(wǎng)站都有各種類型網(wǎng)站論壇管理系統(tǒng),用戶可選擇自己的看法。所以我提出了本課題的研究。</p><p><b>  3.2 任務(wù)目標</b></p><p>  3.2.1 基本性能</p><p>  系統(tǒng)包括主要的功能:新用戶的注冊,會員密碼取回,會員登錄,用戶自己修改信息,管理員刪除

45、用戶,游客瀏覽留言,會員新增留言,會員留言回復,管理員刪除留言這些功能,可以應付一般的用戶需要。</p><p>  3.2.2 開發(fā)目標</p><p>  這個系統(tǒng)預期的目的是為了做成交互式的網(wǎng)頁,方便客戶端和瀏覽器端之間的交流。通過論壇,人們能夠相互交流溝通,把疑惑在論壇里公布,大家獻計獻策,共同學習,共同進步。</p><p>  3.2.3 應用目標<

46、;/p><p>  網(wǎng)上論壇系統(tǒng)是一個會員登錄留言系統(tǒng)。網(wǎng)上游客能夠瀏覽論壇上的帖子,并且能夠注冊成為用戶。論壇注冊會員能夠修改自己的資料信息,申請版主,發(fā)表帖</p><p>  子,讓大家積極參與討論。論壇管理員能夠便于管理論壇,包括瀏覽游客留言,審核留言,對于不健康或是不利于社會穩(wěn)定的留言能進行刪除操作,會員管理以及論壇版主管理等等。</p><p><b&

47、gt;  第4章  總體設(shè)計</b></p><p><b>  4.1系統(tǒng)設(shè)計思想</b></p><p>  4.1.1網(wǎng)上論壇系統(tǒng)說明</p><p>  此網(wǎng)上論壇可以實現(xiàn):</p><p>  游    客:查看帖子、注冊新用戶。</p><p>  注冊

48、用戶:查看帖子、發(fā)新帖子、在線發(fā)布信息、回復信息、修改個人資料、在線短消息。</p><p>  管理員:發(fā)布公告、帖子管理、論壇設(shè)置、版面管理、會員管理、友情連接、短消息管理、數(shù)據(jù)庫備份。</p><p>  4.1.2網(wǎng)上論壇系統(tǒng)總體分析</p><p>  通過上面的功能說明,我們可以將論壇的制作分為四大部分:</p><p>  會員

49、注冊和登陸模塊:這個模塊的功能,就是新來網(wǎng)友可以填寫注冊資料 ,通過審核后便成為本論壇的正式會員,并可以以會員身份登陸論壇。</p><p> ?。?) 版塊及文章顯示模塊:顯示論壇的各大版塊和所有會員最新發(fā)表的一些文章主題。</p><p> ?。?) 發(fā)表文章模塊:為會員提供發(fā)表文章的地方,以及回復主題等。</p><p>  (4) 論壇管理模塊:版主以上職務(wù)

50、可以進行對文章處理,置頂,加精華,刪除等,還有就是管理員對論壇進行綜合管理。</p><p>  了解了具體的功能需求后,就可以按模塊的開始論壇的設(shè)計了。當然,這些模塊的只是在功能上對論壇結(jié)構(gòu)的劃分,實際上并不能夠完全的把他們獨立出來</p><p>  進行設(shè)計。對于這種較小的應用,也沒有必要進行完全的模塊化設(shè)計,在良好的規(guī)劃下直接寫程序代碼或許來的更為簡單一些。</p>

51、<p>  4.1.2 MVC總體設(shè)計模式</p><p>  MVC最初是在Smalltalk-80中被用來構(gòu)建用戶界面的。M代表模型Model, V代表視圖 View, C代表 控制器Controller。</p><p>  MVC的目的是增加代碼的重用率,減少數(shù)據(jù)表達,數(shù)據(jù)描述和應用操作的耦合度。 同時也使得軟件可維護性,可修復性,可擴展性,靈活性以及封裝性大大提高。&l

52、t;/p><p>  單用戶的應用通常是以事件驅(qū)動的用戶界面為組織結(jié)構(gòu)的。開發(fā)人員用一個界面工</p><p>  具畫了一個用戶接口界面,然后編寫代碼根據(jù)用戶輸入去執(zhí)行相應的動作,許多交互式的開發(fā)環(huán)境鼓勵這么做,因為它強調(diào)先有界面然后再有功能。一些軟件設(shè)計模式策略是這樣的,然后經(jīng)常將固定后的代碼融入最后的系統(tǒng)當中。導致的結(jié)果就是,程序組織圍繞用戶界面元素和用戶在那些界面元素上的動作,數(shù)據(jù)的存

53、儲,應用的功能以及用來顯示的代碼都雜亂無章的纏繞在一起。在單用戶的系統(tǒng)里代碼結(jié)構(gòu)是可以這樣的,因為系統(tǒng)需求不會頻繁變化。但是對一個大的系統(tǒng)如大型Web系統(tǒng),或電子商務(wù)系統(tǒng)來說就不太適用了。</p><p>  通過把數(shù)據(jù)模式從各種可以被存取和控制的數(shù)據(jù)中分離出來可以改善分布式系統(tǒng)的設(shè)計。MVC設(shè)計模式由三部分組成。模型是應用對象,沒有用戶界面。視圖表示它在屏幕上的顯示,代表流向用戶的數(shù)據(jù)??刂破鞫x用戶界面對用戶

54、輸入的響應方式,負責把用戶的動作轉(zhuǎn)成針對Model的操作。Model 通過更新View的數(shù)據(jù)來反映數(shù)據(jù)的變化。</p><p><b>  三者關(guān)系如圖:</b></p><p>  圖4-1. MVC關(guān)系圖</p><p><b>  MVC關(guān)系圖的理解</b></p><p>  圖4-2 M

55、VC的分工與協(xié)作</p><p>  4.2數(shù)據(jù)庫設(shè)計思想</p><p>  4.2.1數(shù)據(jù)庫的選擇</p><p>  MySql 的優(yōu)點在于它能使用數(shù)據(jù)表示圖或自定義窗體收集信息,數(shù)據(jù)表示圖提供了一種類似于 Excel 的電子表格,可以使數(shù)據(jù)庫一目了然。另外,MySql允許創(chuàng)建自定義報表用于打印或輸出數(shù)據(jù)庫中的信息。Access也提供了數(shù)據(jù)存儲庫,可以使用桌面

56、數(shù)據(jù)庫文件把數(shù)據(jù)庫文件置于網(wǎng)絡(luò)文件服務(wù)器,與其他網(wǎng)絡(luò)用戶共享數(shù)據(jù)庫。如上所述,MySql 作為關(guān)系數(shù)據(jù)庫開發(fā)具備了許多優(yōu)點,可以在一個數(shù)據(jù)</p><p>  中同時擁有桌面數(shù)據(jù)庫的便利和關(guān)系數(shù)據(jù)庫的強大功能。</p><p>  4.2.2數(shù)據(jù)庫設(shè)計</p><p><b>  表4-1.管理員表</b></p><p&g

57、t;<b>  表4-2.用戶表</b></p><p><b>  表4-3.帖子表</b></p><p><b>  表4-4.投票表</b></p><p>  表4-5.上傳文件表</p><p><b>  表4-6.版塊表</b></p

58、><p><b>  表4-7.短信表</b></p><p>  表4-8.在線用戶表</p><p>  表4-9.封鎖IP表</p><p>  表4-10.論壇公告表</p><p>  表4-11.精華版塊表</p><p><b>  第5章 詳細設(shè)計&

59、lt;/b></p><p>  5.1 用戶注冊功能</p><p><b>  5.1.1人機界面</b></p><p>  此部分是實現(xiàn)用戶的注冊功能。用戶先閱讀注冊協(xié)議,同意協(xié)議后,通過填寫注冊資料,正確填寫后,點擊注冊按鈕后便可注冊成為正式的會員。</p><p><b>  圖5-1 注冊&

60、lt;/b></p><p>  注冊資料分必填資料和選填資料,用戶只要把必填資料填寫正確就可以注冊了。用戶名最多不能超過16個字符,而且不允許注冊重復的用戶名,當用戶輸</p><p>  入想要注冊的用戶名后,可以點擊后面的檢測按鈕檢驗是否該用戶名已經(jīng)被注冊過。性別只能選擇男或女其中一個。密碼最多不能超過16位,兩次密碼必須輸入一致,否則不可以注冊。E-mail必須輸入有效的郵箱

61、地址,以便日后能使用到論文</p><p>  的各種功能。驗證碼是系統(tǒng)隨即產(chǎn)生的,只要用戶按照出現(xiàn)的數(shù)字輸入進去就可以了。選填資料注冊時可以不用填寫,等注冊成功后,可以在修改用戶資料里隨便修改。本論壇支持自定義外部頭像,而且還支持簽名等。用戶注冊成功后就可以使用會員所擁有的一切功能了。</p><p>  5.1.2 操作流程圖</p><p>  圖5-2 注冊

62、操作流程圖</p><p>  5.2 會員發(fā)帖功能</p><p><b>  5.2.1人機界面</b></p><p>  此部分實現(xiàn)會員的發(fā)帖以及回帖等功能。登陸的會員可以在允許會員發(fā)帖的版塊進行發(fā)帖,還可以在普通版塊進行回復主題帖子。游客只能瀏覽帖子,不能發(fā)表帖子和回復帖子。</p><p><b>

63、  圖5-3 發(fā)帖</b></p><p>  會員在開放的版塊里如果想發(fā)表新的主題,便可直接點擊發(fā)表帖子按鈕。進到發(fā)表帖子頁面后,首先要寫自己想發(fā)表的主題,主題字數(shù)不能超過100漢字,主題可以選擇話題類型,例如分享、原創(chuàng)、灌水、推薦、轉(zhuǎn)貼等等。接下來可以選擇帖子的表情,這個是放在帖子的前面。如果會員想上傳圖片等,就要選擇文件上傳了,大小每個不能超過200K,每天限制上傳3個。正文不能超過15000字

64、,字體、字號、字體顏色可以自己設(shè)置,正文還可以插入視頻等。本論壇還為發(fā)帖者提供很多正問內(nèi)容的表情,從而豐富了文章的活力。特殊內(nèi)容是變相保護會員的發(fā)帖權(quán)益,發(fā)帖人可以設(shè)置內(nèi)容為等級可見,即會員必須到達指定的等級才可以閱讀;回復可見,即會員必須回復該主題才可以閱讀;積分可見,即會員必須達到指定的積分才能閱讀;登陸可見,即游客和沒登陸的會員是不能閱讀的,必須會員登陸后方可閱讀等等。正文還可以設(shè)置投票選項,用于調(diào)查一下大家對</p>

65、<p>  某某的一些見解?;蚴墙y(tǒng)計一下某某數(shù)據(jù)等等。正文寫完后可以先點擊預覽,覺得不滿意可以在不滿意的地方再修改一下,直到滿意后,便可點擊發(fā)表了?;貜吞又会槍T開放,游客不可以回復主題?;貜吞佑袃煞N方式:一是快速回復,即簡單的回復幾句話,不能設(shè)置字體,沒有表情,也不能上傳文件等。二是高級回復,即回復內(nèi)容比較全面,可以上傳文件,可有表情,也可以設(shè)置字體大小顏色,段落格式。還可以象發(fā)表主題那樣設(shè)置特殊內(nèi)容回復可見,等級

66、可見,積分可見等</p><p>  5.2.2 操作流程圖</p><p>  圖5-4 發(fā)帖操作流程圖</p><p>  5.3 版主管理帖子功能</p><p><b>  5.3.1人機界面</b></p><p>  此部分主要是版主對論壇的帖子進行綜合管理,刪除、編輯、鎖定、置頂、加

67、精華等等。普通會員是不可以進行此操作的。</p><p><b>  圖5-5 管理帖子</b></p><p><b>  圖5-6 權(quán)限設(shè)置</b></p><p>  版主只可以管理自己版塊的帖子,對別的版塊帖子不能管理。超級版主和管理員可以管理所有版塊的帖子。版主可以把通知或版規(guī)等性質(zhì)帖子置頂,以便引起大家注意。再

68、不需要的時候可以取消置頂。對一些寫的非常好的文章版主可以為其加精華,這樣讓大家多多關(guān)注好的文章,以便鼓勵發(fā)帖者多多發(fā)表好的文章上來大家一起分享。當然對于不好的帖子或者就是灌水的帖子,嚴重的可以直接刪除了,情節(jié)較輕的則可以將其鎖定。對有些文章內(nèi)容有地方不足時,版主可以對其進行編輯修改。版塊里的帖子除了置頂?shù)奶?,別的帖子都是按照發(fā)表時間和回復時間排列的,時間最新的帖子則排在最前面,時間越舊排的就越靠后面。有的文章內(nèi)容比較好,或是值得大家注

69、意一下,但又沒必要置頂更沒必要加精華,這樣版主就可以使用提升功能,使其排在后面的帖子上升到普通帖子的最前面。這種提升和置頂?shù)膮^(qū)別在于置頂?shù)奶右恢迸旁谧钌厦?,無論別的帖子更新時間比它多新,都沒有。普通帖子更新時間最新也是排在它的后面。而提升的帖子呢,</p><p>  提升后是排在普通的帖子最前面了,但別的帖子只要在它被提升后更新了,那么別的帖子就會跑到這個提升帖子的前面了,依此類推。還有一項功能就是轉(zhuǎn)移帖子,

70、這是超級版主以上的職務(wù)才有此權(quán)限。對于某版塊里用戶的發(fā)的帖子不符合該版塊的內(nèi)容范圍呢,而是屬于另一個版塊內(nèi)容的,這時就可以把此帖子轉(zhuǎn)移到符合其內(nèi)容的版塊里。</p><p>  5.3.2 操作流程圖</p><p>  圖5-6 管理帖子操作流程圖</p><p>  5.4 管理員管理論壇功能</p><p><b>  5.4

71、.1人機界面</b></p><p>  此部分是實現(xiàn)管理員對論壇的后臺管理,發(fā)布公告、添加刪除版塊、任命撤消版主等等。</p><p><b>  圖5-7 管理論壇</b></p><p>  首先對于前臺的管理,大部分就是對帖子的管理,版主所有的權(quán)限管理員都有;其次就是對后臺的專署管理,后臺管理分5大模塊。一是論壇常規(guī)設(shè)置,其

72、中包括</p><p>  常規(guī)信息設(shè)置、公告管理、風格設(shè)置、友情連接管理、IP封鎖與解除。二是論壇管理,其中包括論壇版面設(shè)置、版主設(shè)置、超級版主設(shè)置、管理員設(shè)置、后臺密碼修改。三是用戶管理,其中包括用戶刪除與恢復、更改用戶密碼、修改用戶資料、用戶特殊設(shè)置、批量刪除用戶。四是帖子與留言管理,其中包括帖子批量刪除、帖子批量移動、論壇留言管理、群發(fā)留言、帖子數(shù)據(jù)表管理、論壇回收站。五是其他操作,其中包括論壇整理、數(shù)據(jù)

73、庫、上傳文件管理、執(zhí)行SQL語句。</p><p>  5.4.2 操作流程圖</p><p>  圖5-8 管理論壇操作流程圖</p><p><b>  第6章 編碼實現(xiàn)</b></p><p><b>  6.1選擇編程語言</b></p><p>  近年來隨著In

74、ternet技術(shù)的飛速發(fā)展及用戶需求的不斷升級,Web頁面技術(shù)也不斷的推陳出新,使得Web站點的功能越來越強大,能夠提供的服務(wù)種類越來越繁多。從HTML、Client Script 到CGI,從JAVA的誕生到ActiveX, Web頁面設(shè)計人員不斷受到?jīng)_擊,Sun公司在總結(jié)了以往技術(shù),重新思考Web頁面設(shè)計的真正需要后,推出了Java Server Pages /Freemarker,一種用以取代CGI(Common Gateway

75、Interface,通用網(wǎng)關(guān)接口)的技術(shù)。簡單講,F(xiàn)reemarker是位于服務(wù)器端的腳本運行環(huán)境,通過這種環(huán)境,用戶可以創(chuàng)建和運行動態(tài)的交互式 Web 服務(wù)器應用程序,如交互式的動態(tài)網(wǎng)頁,包括使用 HTML 表單收集和處理信息,上傳與下載等等。更重要的是,F(xiàn)reemarker使用的ActiveX技術(shù)基于開放設(shè)計環(huán)境,用戶可以自己定義和制作組件加入其中,使自己的動態(tài)網(wǎng)頁幾乎具有無限的擴充能力,這是傳統(tǒng)的Web編寫工具所遠遠不及的地方。使

76、用Freemarker還有個好處,就在于Freemarker可利用JDBC,SUN的一種新的數(shù)據(jù)訪問模型)</p><p>  Wsb服務(wù)器是Web應用程序的心臟。Tomcat是Sun推出的Web Service的主要成員,作為一個獨立的Web Server的擴展,自推出以來已經(jīng)有了很大發(fā)展,其體系結(jié)構(gòu)是當今市場上最受關(guān)注的Web服務(wù)器之一。新推出的Tomcat5.5版本增強了系統(tǒng)安全性,具有服務(wù)器端腳本開發(fā)調(diào)試

77、,內(nèi)容管理和站點分析,崩潰防護,內(nèi)置JAVA虛擬機及全面支持Freemarker等強大功能。</p><p>  在過去,客戶機/服務(wù)器結(jié)構(gòu)的設(shè)計與Web的相關(guān)技術(shù)幾乎處于平行線上,兩者相互獨立并無法作出集成性的設(shè)計?,F(xiàn)在我們利用Tomcat+Freemarker構(gòu)成三層式Web結(jié)構(gòu)(如圖2.1所示)的中間一層,將客戶機/服務(wù)器結(jié)構(gòu)與Web密切結(jié)合,完成前后端兩者的集成輸出功能,使得Web站點的開發(fā)更方便實現(xiàn)的

78、功能更強大。</p><p>  利用Tomcat+Freemarker技術(shù)來集成Web前后端所帶來的強大效益可歸結(jié)為以下幾個方面:</p><p>  1. 減少構(gòu)建和維護成本。</p><p>  2. 加快聯(lián)機過程。</p><p>  3. 應用軟件集中在服務(wù)器端開發(fā)管理。</p><p>  4. 前端可使用

79、任何瀏覽器(IE、Netscape…..)。</p><p>  5. 后端可存取任何數(shù)據(jù)庫 (SQL、Access…..)。</p><p>  6. 可使用任何腳本語言開發(fā) (VBScript、JavaScript、PERL…..)。</p><p>  6.2 論壇登錄功能</p><p><b>  6.2.1代碼實現(xiàn)<

80、;/b></p><p>  public void validateLogin()</p><p>  { String password;</p><p>  String username;</p><p>  if (parseBasicAuthentication()) {</p><p>  use

81、rname = (String)this.request.getAttribute("username");</p><p>  password = (String)this.request.getAttribute("password");</p><p><b>  } </b></p><p>&

82、lt;b>  else {</b></p><p>  username = this.request.getParameter("username");</p><p>  password = this.request.getParameter("password");</p><p><b>

83、  }</b></p><p>  boolean validInfo = false;</p><p>  if (password.length() > 0) {</p><p>  User user = this.validateLogin(username, password);</p><p>  if (use

84、r != null) {</p><p>  // Note: here we only want to set the redirect location if it hasn't already been</p><p>  // set. This will give the LoginAuthenticator a chance to set the redirect lo

85、cation.</p><p>  this.buildSucessfulLoginRedirect();</p><p>  SessionFacade.makeLogged();</p><p>  String sessionId = SessionFacade.isUserInSession(user.getId());</p><p&g

86、t;  UserSession userSession = new UserSession(SessionFacade.getUserSession());</p><p>  // Remove the "guest" session</p><p>  SessionFacade.remove(userSession.getSessionId());</p&g

87、t;<p>  userSession.dataToUser(user);</p><p>  UserSession currentUs = SessionFacade.getUserSession(sessionId);</p><p>  // Check if the user is returning to the system</p><p&g

88、t;  // before its last session has expired ( hypothesis )</p><p>  UserSession tmpUs;</p><p>  if (sessionId != null && currentUs != null) {</p><p>  // Write its old sessio

89、n data</p><p>  SessionFacade.storeSessionData(sessionId, JForumExecutionContext.getConnection());</p><p>  tmpUs = new UserSession(currentUs);</p><p>  SessionFacade.remove(session

90、Id);</p><p><b>  }else {</b></p><p>  UserSessionDA sm = DataAccessDriver.getInstance().newUserSessionDAO();</p><p>  tmpUs=sm.selectById(userSession,JForumExecutionCont

91、ext.getConnection());}</p><p>  I18n.load(user.getLang());</p><p>  // Autologin</p><p>  if (this.request.getParameter("autologin") != null</p><p>  &&am

92、p; SystemGlobals.getBoolValue(ConfigKeys.AUTO_LOGIN_ENABLED)) {userSession.setAutoLogin(true);</p><p>  // Generate the user-specific hash</p><p>  String systemHash = MD5.crypt(SystemGloba

93、ls.getValue(ConfigKeys.USER_HASH_SEQUENCE) + user.getId());</p><p>  String userHash = MD5.crypt(System.currentTimeMillis() + systemHash);// Persist the user hash</p><p>  UserDAO dao = Dat

94、aAccessDriver.getInstance().newUserDAO();</p><p>  dao.saveUserAuthHash(user.getId(), userHash);</p><p>  systemHash = MD5.crypt(userHash);ControllerUtils.addCookie(SystemGlobals.getValue(C

95、onfigKeys.COOKIE_AUTO_LOGIN), "1");</p><p>  ControllerUtils.addCookie(SystemGlobals.getValue(ConfigKeys.COOKIE_USER_HASH), systemHash);</p><p><b>  }</b></p><p&

96、gt;<b>  else {</b></p><p>  // Remove cookies for safetyControllerUtils.addCookie(SystemGlobals.getValue(ConfigKeys.COOKIE_USER_HASH), </p><p>  null);ControllerUtils.addCooki

97、e(SystemGlobals.getValue(ConfigKeys.COOKIE_AUTO_LOGIN), null);}</p><p>  if (tmpUs == null) {</p><p>  userSession.setLastVisit(new Date(System.currentTimeMillis()));</p><p><

98、;b>  }</b></p><p><b>  else {</b></p><p>  // Update last visit and session start time</p><p>  userSession.setLastVisit(new Date(tmpUs.getStartTime().getTime()

99、 + tmpUs.getSessionTime()));</p><p><b>  }</b></p><p>  SessionFacade.add(userSession);</p><p>  SessionFacade.setAttribute(ConfigKeys.TOPICS_READ_TIME, new HashMap());&

100、lt;/p><p>  ControllerUtils.addCookie(SystemGlobals.getValue(ConfigKeys.COOKIE_NAME_DATA), </p><p>  Integer.toString(user.getId()));</p><p>  SecurityRepository.load(user.getId(), tru

101、e);</p><p>  validInfo = true;</p><p><b>  }</b></p><p><b>  }</b></p><p>  // Invalid login</p><p>  if (!validInfo) {</p>

102、<p>  this.context.put("invalidLogin", "1");</p><p>  this.setTemplateName(TemplateKeys.USER_VALIDATE_LOGIN);</p><p>  if (this.request.getParameter("returnPath&quo

103、t;) != null) {</p><p>  this.context.put("returnPath",</p><p>  this.request.getParameter("returnPath"));</p><p><b>  }</b></p><p><b

104、>  } </b></p><p>  else if (this.request.getParameter("returnPath") != null) {</p><p>  JForumExecutionContext.setRedirect(this.request.getParameter("returnPath"));&

105、lt;/p><p><b>  }</b></p><p><b>  }</b></p><p><b>  6.2.2測試</b></p><p>  先注冊一個ID為USER的用戶(先前數(shù)據(jù)庫中無此用戶名的),注冊成功后,再注冊一個ID為USER的用戶!預期結(jié)果應該是系統(tǒng)提示

106、該用戶名已經(jīng)存在。填寫完整的資料后點擊注冊,此時系統(tǒng)按照預期結(jié)果提示該用戶名已經(jīng)被注冊了。測試結(jié)果,系統(tǒng)正常按照設(shè)計模式運行。</p><p><b>  總  結(jié)</b></p><p>  BBS(Bulletin Board Service,公告牌服務(wù))是Internet上的一種信息服務(wù)系統(tǒng)。它提供一塊公共電子白板,每個用戶都可以在上面書寫,可發(fā)布信息或提出看法

107、。</p><p>  隨著網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,論壇已經(jīng)成為網(wǎng)絡(luò)上不可缺少的交流方式之一,深受網(wǎng)民的喜愛。整個論壇系統(tǒng)使用Browser/Web模式來設(shè)計,服務(wù)器端采用MySql和Freemarker組件來構(gòu)成論壇系統(tǒng);客戶端采用瀏覽器來完成系統(tǒng)維護和管理。</p><p>  1、 該論壇所實現(xiàn)的功能:</p><p>  用戶注冊、發(fā)帖、回復、發(fā)短消息、圖片上傳

108、、帖子加精華。</p><p>  2、 論壇待完善問題:</p><p>  管理員發(fā)貼審核系統(tǒng)、郵件發(fā)送等。</p><p>  經(jīng)過這二個多月的畢業(yè)設(shè)計和對相關(guān)資料的收集,讓我清楚的感到隨著網(wǎng)絡(luò)科技的不斷發(fā)展和網(wǎng)絡(luò)的廣泛應用,使我們的生活離不開它了。網(wǎng)絡(luò)它以自己的獨特的優(yōu)點征服了我們。在教育越來越受重視的21世紀,隨著學生學習類型的不斷增加和交流方式的不斷提高

109、,技術(shù)方面的工作量將會越來越大,在這樣的情況下有一個實用的平臺讓老師和學生從中受益是有其必然性的,如果能做出一個完善的論壇交流系統(tǒng)就會使學生能更好的去學習。在這次的畢業(yè)設(shè)計中雖然時間緊迫但我學會了很多,也感到自身知識的貧乏,希望在日后的努力中能做出更完善的系統(tǒng)。</p><p><b>  致  謝</b></p><p>  從接受課題到現(xiàn)在完成畢業(yè)設(shè)計論文,衷心的

110、感謝我的指導XX老師給予了精心的指導和熱情的幫助,尤其在課題設(shè)計的前期準備階段和本人的數(shù)據(jù)庫的設(shè)計階段,導師提出許多寶貴的設(shè)計意見,在最后的測試修改階王老師在百忙之中抽出時間為我們提供了必要的幫助,這樣使得我們得以順利的完成畢業(yè)設(shè)計開發(fā)工作,在短暫的幾個月的相處時間里,老師淵博的知識,敏銳的思路和實事求是的工作作風給我留下了深刻的印象,這將使得我終身受益,謹此向老師表示衷心的感謝和崇高的敬意。</p><p> 

111、 在短暫的4年大學時光里,同學和朋友們也給了我無私的幫助與支持,在此我對所有學習和生活上幫助過我的同學們表示深深的謝意! </p><p><b>  參考文獻</b></p><p>  [1]前沿電腦圖像工作室 巧學巧用Dreamweaver、Fireworks、Flash制作網(wǎng)頁 北京:人民郵電出版社 2001</p><p>  [2]

112、 [孫衛(wèi)琴.精通Struts:基于MVC的JavaWeb設(shè)計與開發(fā).北京:電子工業(yè)出版社,2004.11</p><p>  [3] 萬峰科技.JSP網(wǎng)站開發(fā)四“酷”全書:新聞、論壇、電子商城、博客.北京:電子工業(yè)出版社,2005.9</p><p>  [4]毛一心等 MySql應用及實例集錦 北京:人民郵電出版社 2000</p><p>  [5]教育部考試中

113、心 數(shù)據(jù)庫(MySql)教程 北京:清華大學出版社 2000</p><p>  [6]李禹生 蔣利華等 MySql應用技術(shù) 北京:中國水利水電出版社 2000</p><p>  [7]廖疆星 MySql數(shù)據(jù)庫開發(fā)指南 北京:冶金工業(yè)出版社 2001</p><p>  [8]李存珠 李宣東 軟件工程概論.南京大學計算機系出版 2001年</p>&

114、lt;p>  [9] 張桂元、賈燕楓.Struts開發(fā)入門與項目實踐.北京:人民郵電出版社,2005.12 </p><p>  [10] 吳其慶.Java模塊設(shè)計實例經(jīng)典.北京:冶金工業(yè)出版社,2004.6 </p><p>  [11]丁貴廣,閆允一,孟繁杰 java編程基礎(chǔ)與實例 第2版 北京:機械工業(yè)出版社 2004</p><p>  [12]毛璟

115、駿編著 Macromedia中國授權(quán)認證培訓(ATC)專用教程——Macromedia Dreamweaver MX動態(tài)網(wǎng)站開發(fā)標準教程 科學出版社 2001</p><p>  [13]李海兵,楊曉亮  Dreamweaver Ultra Dev動態(tài)網(wǎng)頁設(shè)計 第2版 人民郵電出版社 2003</p><p>  [14]龍馬工作室編著 Dreamweaver MX網(wǎng)頁編程入門

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論