基于ASPNET的網絡博客的設計與實現—畢業設計論文_第1頁
基于ASPNET的網絡博客的設計與實現—畢業設計論文_第2頁
基于ASPNET的網絡博客的設計與實現—畢業設計論文_第3頁
基于ASPNET的網絡博客的設計與實現—畢業設計論文_第4頁
基于ASPNET的網絡博客的設計與實現—畢業設計論文_第5頁
已閱讀5頁,還剩46頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、基于基于 ASP.NET 的網絡博客的設計與實現的網絡博客的設計與實現摘摘 要要博客于 2000 年前后興起于美國,成為繼個人主頁,BBS 之后互聯網公共交流的新平臺,其主要特點是:頻繁更新、簡單明了、個性化。本文分析了現有博客系統的實現技術,在此基礎上提出了本系統的解決方案。本文對博客系統進行了詳細的需求分析,建立了合理的基本表,將系統分為多個功能模塊來實現。該系統為用戶提供了在網上展現自己的平臺,主要功能有用戶注冊、登錄、用戶博客管理、瀏覽日志和評論等功能。用戶博客管理包括發表日志、修改和刪除日志、刪除評論、用戶信息修改等功能。本系統采用 ASP.NET 和 SQL Server 2000

2、 數據庫做后臺,界面的設計是通過 DreamWeaverMX2004 來實現的。該系統具有易于維護,可擴展性好等特點。關鍵詞:關鍵詞:博客;ASP.NET;DreamWeaverMX2004;SQL Server 2000;Visual Studio 2003ABSTRACTBlog comes into vogue in America in 2000, it becomes the new platform of public communication in the Internet after individual homepage and BBS. Its of high updat

3、ing frequency, individuation and simplicity. The article analyses the structure and key technology of current blog system such as JAVA, ASP, JavaScript and ASP.NET, on base of which a solution of the system which is implemented by ASP.NET is devised. DreamWeaverMX2004 is used to design the interface

4、 of the system. The essay analyses the requirement of the system in detail, establishes reasonable basic table and divides the system into different function modules. The system provides to users a platform to behave themselves to others. The functions of logging in, registration, manage system for

5、users, looking through logs and comments are implemented. Functions of delivering a new log, modifications and deletions of logs and comments and user info is provided in manage system for users. The system is easy to maintain and extend.Due to the limit of time, there are some shortages in the syst

6、em, more improvement and extensile performance is hoped to be done. Key words:blog,ASP.NET,DreamWeaver MX 2004, SQL Server 2000目目 錄錄前前 言言.6第第 1 章章 博客的現狀和開發結構博客的現狀和開發結構.8第 1.1 節 博客概述.8第 1.2 節 可行性分析.13第 1.3 節 博客系統的需求.14第 1.4 節 應用技術背景介紹.15第第 2 章章 系統概要設計系統概要設計.20第 2.1 節 系統總體功能設計.20第 2.2 節 數據庫設計.22第第 3 章

7、章 詳細設計與實現詳細設計與實現.27第 3.1 節 首頁INDEX.27第 3.2 節 用戶管理首頁USERINDEX.31第 3.3 節 發表日志USER_ADDLOG.ASPX.31第 3.4 節 注冊REG.ASPX.35第 3.5 節 瀏覽某用戶的博客首頁:VIEWBLG.ASPX.38第 3.6 節 瀏覽某篇日志USERLOGSHOW.ASPX.39第 3.7 節 用戶分類管理USERCLASS.ASPX.39第 3.8 節 用戶信息修改頁面USERINFOMODIFY.ASPX.40第 3.9 節 日志修改頁面LOGMOFIFY.ASPX.41第第 4 章章 測試測試.42第 4

8、.1 節 測試主要內容.42第 4.2 節 系統測試方案.42第 4.3 節 測試結論.44結結 論論.45參考文獻參考文獻.46致謝致謝.47前前 言言近來,博客及其文化正在成為互聯網的熱點。以前大多數人對博客是陌生的,但現在博客已經很流行,無論在國外還是在國內,它的發展都非常迅速。博客一詞來自于英文 blog,blog 是 web log 的簡稱,是 web 與 log 的組合詞,它有兩層意思:首先它是 log,也就是日志/日記,以時間順序來排列我們每天所記錄的所有東西。其次,是以 web 方式顯示和發布的,充分利用超鏈接,借助于互聯網,人們之間可以分享經驗,想法,感受等,由此形成一種新型

9、的網絡虛擬社區和人際交往方式。完整的博客概念,一般包括三個方面:一是其內容主要為個人化表達;二是以日記方式記錄且頻繁更新;三是充分利用鏈接拓展文章內容,知識范圍以及和其他博客的聯系。從知識管理的角度來看,博客代表了個人知識過濾與積累和深度交流溝通的網絡新方式,為組織溝通和社會交流帶來了全新的變革, 也提供了一種將隱性知識共享和管理的有效途徑。不管是企業界,還是政府部門和教育領域,都紛紛將博客引入組織內部,或用于非正式的知識管理和網絡營銷,或用于構建組織內部知識管理和溝通交流的新體系。博客并不完全等同于網絡日記,兩者的側重點不同。日記個人性、隱秘性較強,博客是個人性和公共性的結合體,其精髓不是表

10、示個人思想和記錄個人日常經歷,而是以個人的視角,以整個互聯網為視野,精選和記錄自己在網上看到的精彩內容,為他人提供幫助,使其具有更高的共享價值。從這點看,博客有點類似于 P2P 形式的媒體,使信息共享成為現實。也正是因為這種信息共享,使人們有機會了解彼此的思想和內心活動。從心理角度來說,博客滿足了使用者作為信息提供者的心理需求,在自己的博客里自己就是主人,人們在傳統媒體時代只能被動的接受信息,而現在每個人都有可能成為傳播者。博客具有個人性的特點,在傳播專業化方面更是有著天然的優勢。現在的受眾面對海量的信息往往無所適從,有一項調查顯示,最主要的問題是“怎么樣幫助他們處理來自各個渠道的信息”,而博

11、客的個人化,專業化,小眾化特點可以為這個問題的解決提供一種新思路。而博客之所以流行,它隱含的深層原因是博客就是目前網絡精神的最佳體現。博客是第一個真正的個人媒體。從信息傳播的角度來看,博客網站、頻道的出現對于博客個體來說,意味著將信息采集與發布的通道做了最大限度的簡單化和快捷化,最大限度的將編輯甚至總編的作用進行稀釋,是信息的發布和思想的表達更加開放,自由和多樣化,而這正是網絡的精神所在。正如方興東所說,博客秉承了個人網站的自由精神,綜合了激發創造的新模式,使其更具開放性和建設性。博客要在網絡世界體現個人的存在,張揚個人的社會價值,拓展個人的知識視野,建立屬于自己的交流溝通的群體。從這個意義上

12、說,博客將會越來越普及,被越來越多的人接受。第第 1 章章 博客的現狀和開發結構博客的現狀和開發結構第第 1.1 節節 博客概述博客概述1.1.1 博客的歷史博客的歷史博客是 blog 的中文譯名,英文 blog 起源于 weblog,意思是網絡日志。1997 年由 Jorn Barger 所提出。1997 年 12 月,Jorn Barger 運行的“Robot Wisdom Weblog”第一次使用 weblog 這個正式的名字。而目前最流行的詞匯“blog”,一般公認為是 Peter Merholz,在 1999 年才命名的。最早的博客是作為網絡“過濾器”的作用出現的,那就是挑選一些特別

13、的網站,并作簡單的介紹1。準確地說,博客的歷史與萬維網的歷史一樣“悠久”,最早的博客應該就是萬維網的發明人蒂姆貝納斯李,他開設的第一個網站 http:/info.cern.ch實際上就是第一個博客網站,因為里面的內容就是列出所有出現在網上的各類網站。而后的 1993 到 1996 年間,網景的“Whats New”欄目,也有著博客網站的雛形。當然,這一切我們都把它歸于博客的“史前時期”,博客真正的歷史可以從 90 年代中后期開始2。第一階段(20 世紀 90 年代中期到末期):萌芽階段,即啟蒙期。有人認為 1994 年 Justin Hall 聲名狼藉的“網上日記”可以算早期的博客形式,這個人

14、在網上及時發布他對吸毒、做愛的赤裸裸體驗,吸引了不少眼球。有人認為,1998 年 Jesse James Garrett 發表在 Camworld 的網絡旅行日記,是博客社區興起的開始,從此博客成為一種新的潮流。但更多的人認為博客最正宗的源頭還是 Pyra,這是一家小小的軟件公司,三個創始人為了開發一個復雜的“群件”產品,編寫了一個小軟件,以參考文獻博客方式保持彼此的溝通與協同。后來,他們覺得這個簡單的小工具對別人也很有用處,于是,1999 年 8 月,就在網上免費發布了 Blogger 軟件。而此前,算得上博客的人大概只有幾十個而已。結果,許多人利用這個軟件作為武器,進入博客隊伍。博客隊伍開

15、始迅速壯大起來。Pyra 也因為這個根本沒有上心的小軟件而名聲大振。總之,這個階段主要是一批 IT 技術迷、網站設計者和新聞愛好者,不自覺、無理論體系的個人自發行為。還沒有形成一定的群體,也沒有具備一種現象的社會影響力。在悄悄的演變過程中,也有一些事件和人物起到了非常關鍵的啟蒙與帶頭作用。第二階段(2000 年2006 年左右):初級階段,即崛起期。到 2000 年,博客開始大量涌現,并成為一個熱門概念。在博客發展史上,911 事件是一個重要的時刻。正是這場恐怖襲擊,使人們對于生命的脆弱、人與人溝通的重要、最即時最有效的信息傳遞方式,有了全新的認識。一個重要的博客門類:戰爭博客因此繁榮起來,對

16、“911”事件最真實最生動的描述不在紐約時報,而在那些幸存者的博客日志中;對事情最深刻的反思與討論,也不是出自哪一個著名記者手中,而是在諸多的普通博客當中。據不完全統計,至今,國際上的博客數量,已經達到數百萬之多。雖然與數以億計的網民數量相比,還顯得微不足道。但是這些博客的影響力,卻早已超出了他作為個人、甚至作為自己所在行業的原有范圍。開始引起主流的媒體的強烈關注,并明顯感受到博客崛起對傳統媒體的沖擊。同時,各個專業領域的博客如“雨后春筍”,紛紛浮出水面,越來越成為該專業關注的焦點。除了美國,英國、匈牙利、德國等歐洲國家的博客也形成聲勢。亞洲,包括中國也開始感受到博客的脈動。估計,在最近一兩年

17、內,博客將成為互聯網最重要的新現象之一,為全社會所關注。第三階段(2006 年至今):成長階段,即發展期。預測未來永遠是一件很難的事情,尤其預測網絡。對于博客的未來,現在要定論,的確太早。而且爭議性很大。但是,可以進行一些大膽的判斷:到 2010 年左右,作為一種新的媒體現象,博客的影響力有可能超越傳統媒體;作為知識的傳播模式,博客將成為專業領域最具影響力的知識交流中心;作為一種社會交流工具,博客將超越 E-mail、BBS、ICQ(IM),成為人們之間更重要的溝通和交流方式3。以上主要是對全球(美國為中心)博客發展階段的簡單劃分。在中國,與所有的網絡革命一樣,繼續保持著一定的“滯后度”,在博

18、客方面也不例外,中國的發展階段基本上差了一個階段。也就是說,現在中國的博客發展僅僅進入啟蒙期,萌芽期,可能需要 23 年,才能進入真正的初級階段,也就是崛起期。但是,一向對網絡發展保持最密切關注的“數字論壇”成員,從 2000 年左右就已經開始覺察,并予以極大的關注。2002 年,開始義不容辭地充當“博客思想”在中國推廣和倡導的先鋒。“博客中國”()網站就是這樣的一個產物。雖然給“博客”正式冠以中文名字,還是 2002 年剛剛完成的事情。但是在中國,最早關注、追蹤并系統闡述“博客”現象的,是一直研究新媒體的孫堅華。他在 98 年、99 年的不少文章里已經開始涉及許多博客現象,而 2002 年

19、8 月完成的博客論,是國內第一篇系統、全面闡述博客革命的文章4。1.1.2 博客的概念博客的概念博客是一種十分簡易的傻瓜化個人信息發布方式。讓任何人都可以像免費電子郵件的注冊、寫作和發送一樣,完成信息的創建、發布和更新。如果把論壇(BBS)比喻為開放的廣場,那么博客就是你的開放的私人房間。可以充分利用超文本鏈接、網絡互動、動態更新的特點,在你“不停息的網上航行”中,精選并鏈接全球互聯網中最有價值的信息、知識與資源;也可以將你個人工作過程、生活故事、思想歷程、閃現的靈感等及時記錄和發布,發揮您個人無限的表達力;更可以以文會友,結識和匯聚朋友,進行深度交流溝通5。網絡翻譯家對博客的概念解釋為:網絡

20、出版、發表和張貼文章是個急速成長的網絡活動,現在甚至出現了一個用來指稱這種網絡出版和發表文章的專有名詞Weblog,或 Blog。一個 Blog 就是一個網頁,它通常是由簡短且經常更新的 Post 所構成;這些張貼的文章都按照年份和日期排列。Blog 的內容和目的有很大的不同,從對其他網站的超級鏈接和評論,有關公司、個人、構想的新聞到日記、照片、詩歌、散文,甚至科幻小說的發表或張貼都有。許多Blogs 是個人心中所想之事情的發表,其它 Blogs 則是一群人基于某個特定主題或共同利益領域的集體創作。Blog 好象對網絡傳達的實時訊息。撰寫這些Weblog 或 Blog 的人就叫做 Blogge

21、r 或 Blog writer。在網絡上發表 Blog 的構想始于 1998 年,但到了 2000 年才真正開始流行。起初,Bloggers 將其每天瀏覽網站的心得和意見記錄下來,并予以公開,來給其它人參考和遵循。但隨著Blogging 快速擴張,它的目的與最初已相去甚遠6。目前網絡上數以千計的Bloggers 發表和張貼 Blog 的目的有很大的差異。不過,由于溝通方式比電子郵件、討論群組更簡單和容易,Blog 已成為家庭、公司、部門和團隊之間越來越盛行的溝通工具,它也逐漸被應用在企業內部網絡。目前有數個網站可以讓網友設立帳號及發表 Blogs,最有名的是:www.blo-。作為一個 Blo

22、g,至少必須符合下列三個條件。第一,網頁主體內容由簡短、不斷更新的、個人性的眾多 post 組成。第二,它們按時間順序排列,而且是倒序方式,即最新的放在最上面,最舊的在最下面。第三,內容可以是各種主題、各種外觀布局和各種寫作風格,但是文章內容必須以“超鏈接”作為重要的表達方式7。可以說,博客Blog是一個中立、開放和人性化的精選信息資源平臺,博客的作者們,可以將工作、愛好和學習有機結合,通過博客日志,把日常聽得、看到和想到的思想精華及時共享出來8。1.1.3 博客的類型博客的類型對博客的不同劃分根據分類標準的不同,對于博客的類型也會有不同的劃分9。以下列出了幾種劃分方式。(1)按內容劃分一類是

23、以時效性的內容為主的博客,比如過濾各類新聞的博客;一類以專業性的知識為主的博客,專注于某一特定領域,進行知識過濾和知識積累;一類以個人性的交流為主的博客,比如寫真正記錄個人生活的日記,或者有著共同興趣的人形成一個博客社區。具體可以分為很多類:科技博客、新聞博客、戰爭博客等。(2)按匯聚方式分一類是單打獨到的純個人博客,目前托管的大部分博客都屬于這一類;一類是幾個或幾十個興趣相近的群體博客,可以更有力量和影響力,“博客中國”就是如此;一類是博客、非博客等匯聚在一起的社區博客。(3)按存在方式分一是托管博客,無須自己注冊域名、租用空間和編制網頁,只要去免費注冊申請即可擁有自己的博客空間;二是自建獨

24、立網站的博客,有自己的域名、空間和頁面風格,需要一定的條件;三是附屬博客,將自己的博客作為某一個網站的一部分(如一個欄目、一個頻道或者一個地址)。這三類之間可以轉變,甚至可以兼得,一人擁有多種博客網站。(4)按層次分一類是草根博客,主要將博客作為個人表達的方式,是博客世界里沉默的大多數,有著自己非常有限的擁戴者,甚至無所謂有沒有讀者或讀者的多少;一類是追求內容價值和影響力的知識博客,把博客作為自己知識過濾、知識積累和知識傳播的精英類博客;第三類就是出于兩者之間的綜合性博客,兼而有之而沒有側重。標準的 Blog 的形式非常簡單。它是一個經常更新的 Web 網頁,頁面頂端是最近更新的內容,每一條記

25、錄都以日期作為標記10。通常情況下,Blog 軟件會自動對這些記錄進行格式化,它將自動安排版式并完成所有的 HTML 編碼。在這個基本的框架范圍內,又出現了三種不同類型的 Blog。第一種類型被稱為“microjournal”(流水帳)。你可以使用 blog 工具方便地寫出一些句子,然后將它們發布到網上。起初,大多數人都這樣使用 blog。但這種流水帳式的 blog 看起來顯然十分枯燥,因此人們希望看到更有意義的 blog。第二種類型的 blog 被稱為“note book”(記事本),它看起來與雜志或日記比較類似,每一條記錄的篇幅相當于一篇隨筆或散文。那些經常能從日常經歷中得出感悟的人喜歡用

26、這種方式來寫 blog,而許多主要的新聞機構也開始從這些blog 中提取素材。第三種類型叫做“filter”(過濾器),它通常以某個超級鏈接作為開頭(連接到另一個網頁)。Blog 的作者會把自己的觀點(針對鏈接內容)貼在鏈接的后面。如果說前兩種類型的 blog 顯得比較內向的話,filter 類型的 blog 就完全是外向型的性格,它可以讓作者表達對網站、事件、觀點、產品等一切你所感興趣的事情的看法。從某種意義上來說,filter 類型的 blog 扮演著微型 Web 門戶的角色。1.1.4 博客的特征博客的特征博客主要有如下特征。(1)個人性。個人行為、個人角度、個人思想,正是博客文體能夠吸

27、引博客本人和讀者的力量源泉。以“個人大腦”作為網絡搜索引擎和思想發源地,依然是任何技術手段都無法比擬的。(2)即時性。博客是一種習慣,就像學生時代寫日記一樣,博客應該成為每天的“必修課”,經常(甚至每天)更新,不斷積累,是博客文體有別于其他個人文章、著作的關鍵。這種即時性,才可以及時記錄個人的行為、信息和思想。因為即時,所以新鮮,因為新鮮,所以獨特。(3)開放性。面對網絡,裝在個人頭腦里的東西再豐富,如果不及時與他人共享,就無法使知識的價值最大化。在網絡上,知識淵博的衡量標準,就是奉獻的程度。博客要把自己最珍貴、最有價值的收獲都奉獻出來。“吃的是草,擠的是奶”,正是博客的寫照。(4)拿來主義。

28、光開放自己,知識的存量是非常有限的。博客的優勢就是,不斷搜索提煉信息,不斷學習和思考。博客的確需要很“博”,但是博客最根本的信念就是:“別人比我知道得更多”。“博客文體最重要的特點就是鏈接,鏈接是博客最有力的武器,沒有鏈接就沒有生命”。博客與讀者的交流是關鍵,沒有互動交流的博客也就沒有生命。(5)可信度。本來更準確的詞匯,應該是“權威性”,但是博客與傳統意義的權威實在有點不兼容。但的確不能否認,要成為一名受人歡迎的博客,必須以自己超一流的水平建立長期的權威性。正是因為對你的信任,許多人將博客網站作為自己每天補給信息與思想的第一站,沒有這種可信度保證的博客就是平庸的博客。要爭取注意力,博客世界的

29、競爭一點也不比傳統領域輕松。第第 1.2 節節 可行性分析可行性分析 作為博物館網站的一部分,現在對博客的可行性進行分析。 博物館引進群體功能的博客,可以在博物館的管理層、館員、讀者三者之間建立一個平等交流、知識共享的平臺,能夠不斷提升圖書館的管理水平和服務水平。博客還是一種學習工具,長期的閱讀博客,寫作博客日志,對人們的認知促進作用非常顯著。博物館引入博客,有利于構建一個學習型的博物館,不斷推進各方面的工作。有人曾經預測,隨著博客技術的發展和博客人數進一步激增,博客資源必將成為互聯網上極為重要的信息資源。做為歷史收藏的博物館,建立博客站點,探索博客資源收集和管理的方法也具有非常重要的意義。通

30、過上面的分析,我們知道博物館應該引進博客技術,建立博客站點,以進一步提升其服務水平。那么這種想法是否是可行呢?答案也是肯定的。原因主要有二:(1)近些年來,以計算機技術和網絡技術為核心的現代信息技術為博物館提供了很好的網絡環境,博物館也紛紛在互聯網上構建了 Web 站點并利用其為讀者提供比較高質量的服務。博客是基于互聯網,所以現存的良好的網絡環境是博客站點構建基礎。WEB 站點建設過程中積累的經驗也可以應用于博客站點建設中來。更為重要的是,在這過程中鍛煉出一批技術能力過硬的人才,這將在博客站點構建過程中發揮極其重要的作用。(2)博物館長期從事歷史信息管理工作,積累了大量的資源整理的經驗,比如:

31、資源類目的設置和分類、文摘編寫、主題或關鍵詞檢索等,這些經驗應用于博客站點建設會使得博客具有更好的可讀性、可查找性。博物館員網絡檢索的技巧和經驗,會搜集和整理出更多的網絡資源,而網絡資源鏈接和評價是博客站點的重要組成部分。第第 1.3 節節 博客系統的需求博客系統的需求博客分為古建專家的專用博客和普通注冊用戶的博客。專家博客由系統管理員設立,普通注冊用戶的博客可以在線申請開通。包括以下功能: (1) 博客定制用戶可以通過選擇不同的模板對博客進行定制。模板由系統提供。用戶選擇模板之后,其博客空間自動變成該模板的樣式。專家博客用戶還可以用鼠標拖拽進行可視化操作來布局各內容模塊,從而定制用戶個性化的

32、博客。(2) 博客日志撰寫用戶可以根據系統提供的網頁編輯器的豐富功能撰寫新的博客日志,編輯已完成的博客日志和發布博客日志。同時還允許用戶上傳附件。已經發布的博客日志被瀏覽時,如果博客作者允許添加評論,那么瀏覽者可以對此博客日志進行評論,也可以在自己的博客日志里添加該博客日志提供的引用通告地址。(3) 博客日志管理博客用戶通過管理工具對自己的博客日志屬性進行設置,包括日志是否允許評論、日志類別管理、日志發布狀態、顯示狀態管理等。(4) 內容聚合擬采用 RSS 對博客內容進行聚合。用戶可以進行定制主題信息,本平臺將該主題的信息生成 RSS 規范的 xml 文件,主動推送到用戶的計算機上。(5) 引

33、用通告提供博客之間互相指向的機制,實現網站之間的互相通告。每篇文章發布后都會自動生成引用通告地址,其他用戶在對這篇文章發布相關的博客日志時只要添加了這篇文章提供的引用通告地址,那么在這篇文章的引用通告里將自動提供鏈接到其他用戶發布的那篇博客日志里。(6) 照片管理用戶可以創建新的相冊,并對這些相冊進行管理。用戶可以把自己的照片存到自己創建的相冊里進行管理。(7) 好友管理用戶可以把自己的好友加到自己的博客中,并對其好友進行管理,包括其主頁、郵件、聯系方式等信息的管理。同時可以與好友交流、共享博客日志、照片、文件等。 (8) 公共管理具有相應權限的用戶可以發布系統公告,并可以對系統公告進行管理。

34、同時用戶可以設置公告的提示方式。(9) 流量統計提供對每個用戶的博客空間的訪問量的統計,包括年訪問量、月訪問量、周訪問量和日訪問量的統計。第第 1.4 節節 應用技術背景介紹應用技術背景介紹整個博客系統采用 ASP.NET 技術,后臺數據庫采用 SQL Server 2000,頁面的設計采用 DreamWeaverMX2004 實現,下面簡要介紹一下這幾方面的內容。1.3.1 ASP.NET 技術技術ASP.NET 作為 Visual Studio.NET 的一個組成部分,它是從 ASP 發展過來的,但并不是 ASP 的簡單等級,而是 Microsoft 推出的新一代 Active Serve

35、r Pages。ASP.NET 是微軟的.NET 框架的重要組成部分,它使用VB.NET,Jscript.NET 等程序設計語言來實現動態網頁編程,它使得編程非常靈活和有效,同時 ASP.NET 是基于組件技術和面向對象的開放系統,程序員可以使用系統的豐富組件,如文件上傳,E-MAIL 發送,文件操作,廣告組件等,不僅如此,程序員還可以開放自己的組件,擴展 ASP.NET 的功能。ASP.NET 直接支持組件和 Code-Behind 技術,可以更好的實現程序代碼和HTML 代碼的分離,ASP.NET 采用了新的叫做 ADO.NET 的數據庫訪問技術,可以大大提高數據訪問的效率,也可以更容易的

36、開發數據庫應用系統11。ASP.NET 主要有以下特點:(1)程序代碼的獨立性在 ASP 網頁中只限于使用腳本語言,如 VB.Script 等,也缺乏以組件為基礎,事件驅動的開發方式,使 ASP 程序開發很不方便。ASP.NET 允許使用編譯式語言,如 VB.NET 等,大大提高了其執行效率和跨語言的兼容性,同時也有其他產商提供的.NET 支持。ASP 用于網頁顯示的 HTML 標注與程序代碼混在一起,其中混合了 Tag 標注,Client 端的 Script 語句和 Server 端的程序,代碼長而雜亂無章,不僅程序維護困難,排錯也是問題,ASP.NET 使用事件驅動與數據綁定的開發方式,將

37、程序代碼和用戶接口分開,采用 Code-behind 方式將程序代碼和顯示標注分開,使程序具有良好的可讀性。(2)組件部署與組件操作簡單在 ASP 中使用 COM 組件,COM 組件在使用之前必須先注冊,將組件的信息寫入到登陸系統中,同時組件在使用中會被鎖定而無法更新版本,在ASP.NET 中不需考慮組件注冊,只需將相關文件復制到目的機器就可以了,組件更換后不需重新啟動,簡化了組件的部署,ASP.NET 采用易讀的 XML 組態文件,把此文件放到 WEB 應用程序的相關目錄即可完成組態操作,可采用文件復制和 FTP 文件上傳的方式來實現 WEB 應用程序的組態。(3)良好的可擴展性ASP 的

38、Session 對象的狀態信息不能跨機器運行,當 Server Farm 上運行時,不能在不同機器上傳遞 Session 對象的信息,這樣系統的延展性受到極大的限制,雖然可以通過其他方式解決,但很煩瑣,在 ASP.NET 中使用 Session-State 管理方式,狀態的信息可以在不同機器的不同進程上維護,有效的解決了 web farm和 web garden 中對 Session 的管理。(4)更高的執行效率ASP 代碼在執行上屬于解釋方式執行,每次執行都需要解釋和加載,因而其執行速度受到限制,ASP.NET 執行方法屬于編譯方式執行,ASP.NET 頁在第一次請求時就被編譯進.NET 類

39、中,并且編譯的類被緩存,用于隨后的請求,因而以后每次執行無需加載,其執行性能和速度比 ASP 有較大的改進和提高。ASP.NET Cache 可將建立時間耗時很長的資源或經常存取且變動性不大的數據暫時存在內存,以在最短時間響應用戶的請求,利用 ASP.NET Cache 可以建立高效率的 WEB 應用程序。(5)先進的數據庫存取模型Microsoft 推出的 UDA 為關系型和非關系型數據庫訪問提供了一致的訪問接口,一致訪問接口包括兩層軟件接口,分別為 ADO 和 OLEDB,對于不同層次的應用開發,ADO 提供了高層軟件接口,可在各種腳本語言中直接使用,OLEDB 提供了底層軟件接口,可在

40、C 和 C+中直接使用。在 ASP 中采用 ADO實現對數據庫的訪問。在 ADO 中,通過 Connection,Command 和 Recordest 對象對數據庫進行操作,當在不同應用程序和組件之間傳送 Recordest 時,必須通過 COM marshalling 的機制將參數和數據包裝成標準的二進制格式,在適當的進行數據類型轉換,因而速度慢,效率低。在 ASP.NET 中使用 ADO.NET 對數據庫進行存取,ADO.NET 使用 XML交換數據,其執行效率比傳統的 COM marshalling 方式快得多,XML 是簡單的文字數據,可以省去數據類型轉換的問題,目前已有許多數據庫產

41、商設計出了XML 數據庫,如 SQL Server 2000,通過 HTTP 協議支持 XML 文件格式與 SQL Server 2000 之間進行數據交換,ADO.NET 在 ADO 基礎上,又增加了許多對象,如 Dataset,DataView,DataReader 和 DataSetCommand 等,其中 Dataset 對象是核心,它以離線方式存在于內存中,用來讀取數據,因而讀取速度更快12。1.3.2 SQL Serve 2000在當今的網絡技術中,數據庫與網頁的結合是一個熱點。有了數據庫的支持,可以擴展網頁的功能,可以方便地設計出交互式頁面,可以構造功能強大的管理系統。Micro

42、soft SQL Server 2000 是基于客戶機,服務器的一種關系型數據管理系統。SQL(structure query language)即結構化查詢語句,是用來定義,修改和管理數據,并用表格,索引,關鍵字,存儲數據的行和列來控制數據庫的一種語言。Microsoft SQL Server 2000 用 SQL 語句不僅可以在客戶機和服務器之間傳送請求和應答,還可以實現在不同數據庫管理系統間通信,也可以在服務器上運行,負責向用戶提供數據。服務器負責管理和分配服務器資源。使用 SQL Server2000 建立數據庫,建立用戶表。表是數據庫系統中一個基本的概念,它是數據庫中數據存儲的主要載

43、體,是數據庫結構中的重要組成部分。在表中,每一列成為一個字段(或者稱為一個屬性),在每個字段中存儲的是相同數據類型的值,并且可以綁定到規則、約束或缺省值來進行數據限制。每一行成為一條記錄,每一條記錄都是不同屬性某一個取值的集合。SQL 查詢語言:SQL 一詞實際上是“結構式查詢語言”的縮寫,當用戶要檢索數據庫中的數據時,就通過 SQL 語言發出請求,接著數據庫對該 SQL 進行處理并檢索所要求的數據,最后將其返回給用戶。在大部分 ASP 應用程序中都會接觸到數據庫,而在編寫 ASP 應用程序時用來進行數據庫操作的標準語法正是 SQL。SQL Server2000 提供了幾種不同的工具可以進行數

44、據查詢,推薦使用Query Analyzer(查詢分析器),它是一個完備的進行數據庫操作圖形化輔助工具,另外,在 Enterprise Manager 中,可以直接使用圖形化界面執行數據庫操作。對數據庫的基本操作,主要指的也是對表的操作。在數據庫開發過程中,表的規范化設計是數據庫開發成功的基礎,有利于數據庫的管理和維護,也是數據庫系統的關鍵。SQL 語言有著非常突出的優點,主要是:(1) 非過程化語言(2) 統一的語言(3) 所以關系數據庫的公共語言非過程化語言:SQL 是一個非過程化的語言,因為它一次處理一個記錄,對數據提供自動導航。SQL 允許用戶在高層的數據結構上工作,而不對單個記錄進行

45、操作,可操作記錄集,所有 SQL 語句接受集合作為輸入,返回集合作為輸出。SQL 的集合特性允許一條 SQL 語句的結果作為另一條 SQL 語句的輸入。SQL 不要求用戶指定對數據的存放方法, 這種特性使用戶更易集中精力于要得到的結果;所有 SQL 語句使用查詢優化器,它是 RDBMS 的一部分,由它決定對指定數據存取的最快速度的手段,查詢優化器知道存在什么索引,在哪兒使用索引合適,而用戶則從不需要知道表是否有索引、有什么類型的索引13。 統一的語言:SQL 可用于所有用戶的 DB 活動模型,包括系統管理員、數據庫管理員、 應用程序員、決策支持系統人員及許多其它類型的終端用戶。SQL 為許多任

46、務提供了命令,其中包括:(1) 查詢數據(2) 在表中插入、修改和刪除記錄(3) 建立、修改和刪除數據對象(4) 控制對數據和數據對象的存取以前的數據庫管理系統為上述各類操作提供單獨的語言,而 SQL 將全部任務統一在一種語言中。 所有關系數據庫的公共語言:由于所有主要的關系數據庫管理系統都支持SQL 語言,用戶可將使用 SQL 的技能從一個 RDBMS(關系數據庫管理系統)轉到另一個,所有用 SQL 編寫的程序都是可以移植的。SQL 語句簡單易懂,SQL 語言已經成為關系型數據庫的標準語言,SQL Server 數據庫操作簡單,維護方便,已經成為大型企業構建企業網站的首選數據庫。1.3.3

47、DreamWeaverMX2004DreamWeaver 是美國 MACROMEDIA 公司出品的動態網頁編輯工具,它集網站制作和網站管理于一身,是專為網站設計者開發的可視化網頁編輯工具。利用它設計的網頁可以跨越平臺,瀏覽器限制,是目前最受歡迎的工具軟件。在最新的 MX 版本中,對 Dreamweaver 的代碼控制和后臺功能做了進一步的增強,整合了 UltraDEL,ColdFusion Studio,Homesit 等優秀的軟件,使得新版本的 DreamWeaverMX2004 比起原來的版本,功能得到一個飛躍的發展,在整合了其他三個軟件后,DreamWeaverMX2004 已經不僅僅被

48、用來制作網頁了。還具備了與數據庫關聯的能力和操作數據庫的能力,可以用來開發大型的網站數據庫應用系統。DreamWeaverMX2004 具有以下特點,一是具有最高的制作效率,DreamWeaverMX2004 可以引入使用 Firework,FreeHand,PhotoShop 等軟件制作的圖形,圖像,還能嵌入 Flash,Shockwave 等動態影片;二是建立網頁模版,在模版中指定可編輯和不可編輯的部分,網站設計者可直接在模版上編輯自己的內容,不會改變模版樣式;三是具有網站管理功能,使用網站地圖可以快速制造網站結構圖,設計,更新和重組網頁14。若改變網頁位置或文件名稱,DreamWeave

49、rMX2004 會自動更新所以的鏈接;四是全方位的呈現特點,利用DreamWeaverMX2004 設計的網頁,可以全方位的呈現在任何瀏覽器上。第第 2 章章 系統概要設計系統概要設計第第 2.1 節節 系統總體功能設計系統總體功能設計當前 Web2.0 的興起,讓博客成為一種時尚。此博物館博客系統是博物館網站中的一部分內容,是為了用戶能夠更好的交流,發表想法,能夠更好的為博物館網站提供更完整的功能。博客所具備的功能如下:(1) 用戶注冊(2) 用戶登錄(3) 用戶博客管理(4) 顯示日志、評論(5) 博客首頁(6) 博客展示博客網站系統功能模塊圖如下:博 客用戶注冊用戶博客管理博客首頁博客展

50、示用戶登錄日志、評論顯示發表日志管理日志、評論修改用戶信信息修改個人分類圖圖 2 21 1 功能模塊圖功能模塊圖博客系統流程圖:首次使用用戶首頁進入注冊系統修改個人信息發表文章注冊用戶登錄瀏覽文章管理員一般用戶修改刪除文章瀏覽評論刪除管理用戶修改刪除評論一般操作已注冊用戶登錄回復評論管理員操作圖圖 2 22 2 系統流程表系統流程表用戶登錄基本流程圖: 圖圖 2 23 3 登錄基本流程表登錄基本流程表登錄主頁面注冊頁面修改密碼修改文章修改評論修改用戶資料發表評論頁面第第 2.2 節節 數據庫設計數據庫設計2.2.1 數據庫需求分析數據庫需求分析項目需求具體體現在各個信息實體的信息查詢和更新上,

51、這就要求其實體的數據庫結構設計包含必須的信息。首先要劃分該項目設計信息實體,總結出如下的需求信息:(1) 博客用戶(2) 日志類別(3) 日志文章(4) 日志評論然后根據每個信息實體必須包含的信息以及各個信息實體之間的聯系,設計出如下的數據項和數據結構(1) 博客用戶,包括數據項:用戶名,密碼,昵稱,E-MAIL,生日,城市,注冊日期,更新日期,博客空間名,博客點擊數,頭像。(2) 日志類別,包括數據項:日志類別表,所屬用戶 ID(3) 日志文章,包括數據項:標題,內容,發表時間,所屬用戶 ID,所屬類別 ID(4) 日志評論,包括數據項:評論者昵稱,評論內容,評論時間,評論的日志文章的 ID

52、。2.2.2 數據庫概念結構設計數據庫概念結構設計一個成功的博客系統,是建立在許多條件之上的,而數據庫是其中一個非常重要的條件和關鍵技術。 信息管理系統所涉及的數據庫設計分五個步驟:數據庫需求分析、概念設計、邏輯設計、物理設計與加載測試。 (1)數據庫需求分析的任務是將業務管理單證流化為數據流,劃分主題之間的邊界,繪制出 DFD 圖,并完成相應的數據字典。 (2)概念設計的任務是從 DFD 出發,繪制出本主題的實體關系圖,并列出各個實體與關系的綱要表。 (3)邏輯設計的任務是從 E-R 圖與對應的綱要表出發,確定各個實體及關系的表名屬性。 (4)物理設計的任務是確定所有屬性的類型、寬度與取值范

53、圍,設計出基本表的主鍵,將所有的表名與字段名英文化(現在很多軟件能支持中文字段,如MS SQL Server,我就是用的中文字段名),實現物理建庫,完成數據庫物理設計字典。 (5)加載測試工作貫穿于程序測試工作的全過程,整個錄入、修改、查詢、處理工作均可視為對數據庫的加載測試工作。要設計出一個好的信息管理系統數據庫,除滿足系統所要求的功能外,還必須遵守下列原則: (1)基本表的個數越少越好。 (2)主鍵的個數越少越好。鍵是表間連接的工具,主鍵越少,表間的連接就越簡單。 (3)字段的個數越少越好。 (4)所有基本表的設計均應盡量符合第三范式。根據實體以及實體的數據結構的分析,畫出實體間的關系 E

54、-R 圖如下:博客用戶創建類別發表文章發表評論日志類別日志文章日志評論圖圖 2 24 4 實體關系實體關系 E-RE-R 關系圖關系圖博客用戶實體 E-R 圖如下:博客用戶用戶名用戶密碼EMAIL昵稱圖圖 2 25 5 博客用戶博客用戶 E-RE-R 圖圖日志類別實體 E-R 圖如下:日志類別日志類別名所屬用戶 ID 圖圖 2 26 6 日志類別實體日志類別實體 E-RE-R 圖表圖表日志文章實體 E-R 圖如下:日志文章標題標題內容所屬用戶 ID所屬文章 ID 圖圖 2 27 7 日志文章實體日志文章實體 E-RE-R 圖表圖表日志評論實體 E-R 圖如下:日志評論評論內容評論者昵稱評論時間

55、評論文章 ID圖圖 2 28 8 日志評論實體日志評論實體 E-RE-R 圖表圖表2.2.3 數據庫邏輯結構設計數據庫邏輯結構設計數據庫概念結構設計完畢后,將數據庫結構細化為某種數據庫的邏輯結構,以數據字典的表示方法呈現出來,這就需要及時更新數據字典,否則會給今后的維護帶來種種不便。博客數據庫中各個表的設計結構如下圖所示,每個表格表示在數據庫中的一個表。(1)博客用戶信息表表名稱:USERS用途:用來存放博客用戶個人信息字段名稱,數據類型,長度,是否為空,是否主鍵,內容表表 2 21 1 博客用戶信息表博客用戶信息表FieldTypeNullKeyConnentIdIntNot NULLPRI

56、主鍵UsernameNavrchar(50)Not NULL用戶名UserpassNavrchar(50)Not NULL密碼NicknameNavrchar(50)Not NULL昵稱EmailNavrchar(50)Not NULL電子郵箱birthdayDatetimeNot NULL生日RegdateDatetimeNot NULL注冊日期UpdatetimeDatetimeNot NULL博客更新時間SpacenameNavrchar(50)Not NULL博客空間名(2)日志類別表表名稱:CATEGORY用途:用來存放博客日志類別信息字段名稱,數據類型,長度,是否為空,是否主鍵,內

57、容表表 2 22 2 日志類別表日志類別表FieldTypeNullKeyCommentIdIntNot NULLPRI主鍵CategoryNavrchar(50)Not NULL日志類別名UseridIntNot NULL所屬用戶 ID3)日志文章表表名稱:H-BLOG用途:用來存放日志文章的內容字段名稱,數據類型,長度,是否為空,是否主鍵,內容表表 2 23 3 日志文章表日志文章表FieldTypeNullKeyCommentIdIntNot NULLPRI主鍵TitleNavrchar(50)Not NULL日志標題ContentNtxetNot NULL日志內容Publishtime

58、DatetimeNot NULL發表時間UseridIntNot NULL所屬用戶 IDCategoryidintNot NULL所屬類別 ID(4)日志評論表表名稱:LOG用途:用來存放日志評論的內容字段名稱,數據類型,長度,是否為空,是否主鍵,內容表表 2 24 4 日志評論表日志評論表FieldTypeNullKeyCommentIdIntNot NULLPRI主鍵NicknameNavrchar(50)Not NULL評論者昵稱ContentNtxetNot NULL評論內容PublishtimeDatetimeNot NULL評論時間BlogidIntNot NULL所屬文章 ID第

59、第 3 章章 詳細設計與實現詳細設計與實現這里將詳細介紹博客系統的功能、結構及工作流程。主要包括以下幾個部分(1) 注冊、登錄 (2) 發表日志 (3) 發表評論 (4) 日志和評論管理(5) 修改用戶信息(6) 管理用戶分類 以下將具體介紹每個界面。第第 3.1 節節 首頁首頁 index(1) 登陸功能:YNNYYN開始輸入用戶名、密碼用戶名是否為空?密碼是否為空?查詢數據庫密碼是否正確?成功登陸圖圖 3 31 1 用戶登錄流程圖用戶登錄流程圖如圖 31 所示,用戶的登錄過程需要進行判斷和查詢數據庫。成功登陸后將跳轉到用戶管理頁面,用戶的登錄信息由會話保存。具體代碼實現: Sub chec

60、kuser(ByVal sender As Object, ByVal e As EventArgs) If (username.Text = ) Then Response.Write(alert用戶名不能為空) ElseIf (password.Text = ) Then Response.Write(alert密碼不能為空) Else Dim cn As SqlConnection = New SqlConnection(cstring) cstring = (data source=(local);initial catalog=blog;user id=sa;pwd=123;) cn.Connect

溫馨提示

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

評論

0/150

提交評論