個(gè)人博客系統(tǒng)畢業(yè)論文.doc
《個(gè)人博客系統(tǒng)畢業(yè)論文.doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《個(gè)人博客系統(tǒng)畢業(yè)論文.doc(40頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、 J JI IA AN NG GX XI I N NO OR RM MA AL L U UN NI IV VE ER RS SI IT TY Y 學(xué)學(xué) 士士 學(xué)學(xué) 位位 論論 文文 THESIS OF BACHELOR (2008 2012 年) 博客網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)博客網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn) Design And Implementation of Blog Website 姓 名: 張勇軍 學(xué) 號(hào): 0867010453 學(xué) 院: 軟件學(xué)院 專 業(yè): 軟件工程 完成時(shí)間: 2012 年 4 月 1 號(hào) 指導(dǎo)老師: 劉媛春 摘 要 摘摘 要要 博客信息管理系統(tǒng)致力于為廣大用戶提供優(yōu)質(zhì)的互動(dòng)交流平臺(tái)
2、,提高網(wǎng)站的 知名度和訪問量,從而獲得為企業(yè)提供更多產(chǎn)品介紹及展示的機(jī)會(huì),提升自己 網(wǎng)站的價(jià)值。為了滿足博客信息管理系統(tǒng)的要求,實(shí)現(xiàn)系統(tǒng)靜態(tài)與動(dòng)態(tài)頁面的 相互分離,系統(tǒng)采用 JSP+JavaBean+Servlet 和 SQL Server2005 數(shù)據(jù)庫相結(jié)合 的開發(fā)模式。 論文首先論述了系統(tǒng)的開發(fā)背景和設(shè)計(jì)目標(biāo),并對(duì)系統(tǒng)開發(fā)所采用的技術(shù) 進(jìn)行相應(yīng)的簡單介紹。在系統(tǒng)分析中,對(duì)系統(tǒng)的模型進(jìn)行簡單分析,明確系統(tǒng) 的操作流程,并對(duì)系統(tǒng)進(jìn)行可行性分析,確定在目前的條件下,開發(fā)博客信息 管理系統(tǒng)是可行的。在需求分析結(jié)果的基礎(chǔ)上,對(duì)系統(tǒng)的功能模塊進(jìn)行劃分。 接著對(duì)系統(tǒng)中的數(shù)據(jù)庫進(jìn)行模型設(shè)計(jì),包括數(shù)據(jù)流圖
3、、實(shí)體聯(lián)系圖及數(shù)據(jù)表結(jié) 構(gòu)。在系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)中,確定系統(tǒng)的開發(fā)思想以及開發(fā)環(huán)境,并對(duì)系統(tǒng)中 的 JavaBean 和 Servlet 代碼進(jìn)行設(shè)計(jì)。最后給出了系統(tǒng)中模塊的詳細(xì)設(shè)計(jì)與實(shí) 現(xiàn),并對(duì)系統(tǒng)模塊涉及到的關(guān)鍵源代碼進(jìn)行了詳細(xì)的分析。 經(jīng)過調(diào)試運(yùn)行后表明,系統(tǒng)可以滿足用戶創(chuàng)建個(gè)人博客的各項(xiàng)要求。 關(guān)鍵詞關(guān)鍵詞:MVC;JSP;JAVABEAN;博客 Abstract I Abstract The blog information management system is concentrates on high-quality interactive exchanges platform
4、for a large number of users, increasing the visits and making the website more and more famous, thereby can acquiring for the opportunity that business enterprise providing more introductions and shows of products, promoting the value of the website.Satisfy for the functions of blog information mana
5、gement system, achieving the systems static page separate with dynamic page mutually, using JSP+ JavaBean+ Servlet with the mode of development that the database of SQL Server2005 combine together. The paper discusses the background of development of the system and the design of the target first, an
6、d introduces the tecknique which used to develop simply.In the analyse of system, proceeded the simple analysis to the model of the system, made sure the operation process of the system, proceed the analyse to the system, ensure that under the current term, developing blog information management sys
7、tem is feasible. At the foundation of requirement with the analyse result, proceeding the providing of the function module of the system. Follow, designing the database model, including the data flow diagram, entity relation diagram and data tables. during the design and realization of the system, m
8、aking sure the development thought of the system and install the environment of development,at last show the design details with realize finally an a key for of detailed design with realization, and analyzed the program which relate to the system module. After debugging and running ,it shows that th
9、e system can satisfy with users to create personal blog. Key Words:MVC;JSP; JAVABEAN;Blog 目 錄 II 目目 錄錄 第 1 章 緒論1 1.1 系統(tǒng)的開發(fā)背景 .1 1.2 系統(tǒng)開發(fā)的目標(biāo)及意義 .1 1.3 本文的主要內(nèi)容 .2 第 2 章 開發(fā)技術(shù)3 2.1 JSP 的基礎(chǔ)SERVLET 技術(shù) .4 2.2 JAVABEAN原理和機(jī)制 4 2.3 開發(fā)平臺(tái):ECLIPSE+DREAMWEAVER6 2.4 SQL SERVER 2005.6 第 3 章 分析與設(shè)計(jì)8 3.1 業(yè)務(wù)流分析及流程圖 .8
10、3.2 數(shù)據(jù)流圖分析 .8 3.3 功能模塊設(shè)計(jì) .9 3.3.1 博客注冊(cè)登錄管理模塊.9 3.3.2 博客及文章檢索查詢模塊10 3.3.3 博客頁面顯示模塊10 3.3.4 博客個(gè)人管理維護(hù)模塊10 3.4 數(shù)據(jù)庫設(shè)計(jì) E-R 圖 11 3.5 系統(tǒng)數(shù)據(jù)表設(shè)計(jì) 13 第 4 章 系統(tǒng)實(shí)現(xiàn).16 4.1 系統(tǒng)主界面 16 4.1.1 注冊(cè)模塊的實(shí)現(xiàn)16 4.1.2 發(fā)表評(píng)論模塊18 4.1.3 刪除日志模塊19 4.2 修改個(gè)人資料界面 20 4.3 上傳圖片界面 21 III 4.4 系統(tǒng)主要功能模塊的實(shí)現(xiàn) 22 4.4.1 身份驗(yàn)證22 4.4.2 后臺(tái)文章添加管理23 4.4.3 后
11、臺(tái)文章類別管理25 4.4.4 撰寫日志模塊25 4.4.5 修改用戶信息27 4.5 公共核心類的設(shè)計(jì) 27 4.5.1 數(shù)據(jù)庫相關(guān)27 4.5.2 編寫 JavaBean 類.28 4.5.3 管理類設(shè)計(jì)29 第 5 章 結(jié)束語.32 參考文獻(xiàn).33 致 謝34 第 1 章 緒論 0 第第 1 章章 緒論緒論 1.1 系統(tǒng)的開發(fā)背景系統(tǒng)的開發(fā)背景 博客的精神是:自由表達(dá),開放寬容,個(gè)性張揚(yáng),專業(yè)精神。在沒有自己 的博客之前,人們會(huì)經(jīng)常進(jìn)出于論壇發(fā)表貼子或者通過即時(shí)通信軟件聊天,來 表達(dá)自己的想法,可是這些都是零散的和雜亂的。博客的出現(xiàn),讓人們可以不 斷的把自己以前的和每天激發(fā)的一些想法或者
12、感受整理放在自己的博客上,每 次在寫文章的時(shí)候,可能又會(huì)產(chǎn)生新的想法。雖然一些想法一些思考只是皮毛, 沒有什么深度,但是當(dāng)下筆去寫的時(shí)候每次都會(huì)對(duì)某個(gè)小小的問題有了更多的 一點(diǎn)點(diǎn)思考,再寫博客的時(shí)候就感覺到了一種滿足感,一種想法得以釋放思考 得以延伸的滿足感。生活中每天的一個(gè)小小的事情都會(huì)引起人們的思考,甚至 是和朋友的聊天中一個(gè)小小的火花迸發(fā)。督促自己努力、把一時(shí)的想法變成觀 點(diǎn),爭取在生命中的每天里留下點(diǎn)什么,這也是人們寫博客的目的之一。這樣 就能督促自己每一天不要渾渾噩噩,時(shí)光流逝無痕無聲無息,寫博客也是在自 己的每一天上留下了一道淺淺的思考和劃痕。 不僅如此,通過寫博客、記錄自己的想法
13、可以幫助實(shí)現(xiàn)如下這些目的: (1)記錄生活,在自己的每一天上留下思考的劃痕。 (2)整理思路,固化知識(shí),獲得更多更好的想法。 (3)分享,將自己的想法、經(jīng)驗(yàn)與人分享。 (4)交流、提高,通過交流產(chǎn)生更多的思維火花,相互提高。 (5)交友,互相鼓勵(lì),一路同行。 如果說博客網(wǎng)站是一個(gè)舞臺(tái),那么所有的博客都是其中的舞者,把自己有 價(jià)值的真實(shí)的一面展示在網(wǎng)絡(luò)世界中,相互交流溝通;如果博客僅僅為了寫日 志,那么博客是一面鏡子,鏡子中展現(xiàn)的是真實(shí)的自己;如果博客是一個(gè)自由 媒體,可以把自身感覺有價(jià)值的信息通過博客這個(gè)工具發(fā)布,與網(wǎng)友共享。 1.2 系統(tǒng)開發(fā)的目標(biāo)及意義系統(tǒng)開發(fā)的目標(biāo)及意義 本系統(tǒng)是用 JS
14、P 實(shí)現(xiàn)的一個(gè)完全基于瀏覽器的博客系統(tǒng),任何注冊(cè)個(gè) 人博客的人都擁有以下功能: (1)登錄博客系統(tǒng)的后臺(tái)管理平臺(tái)。 (2)更改博客賬號(hào)的基本信息。 第 1 章 緒論 1 (3)撰寫日志。 (4)日志管理。 (5)評(píng)論管理。 (6)留言管理。 博客訪問者具有以下功能: (1)瀏覽博客系統(tǒng)中的日志、留言、評(píng)論。 (2)發(fā)表評(píng)論及留言。 (3)檢索日志。 隨著 Blog 人數(shù)的增加,Blog 作為一種新的生活方式、新的工作方式和新的 學(xué)習(xí)方式已經(jīng)被越來越多的人所接受,并且在改變傳統(tǒng)的網(wǎng)絡(luò)和社會(huì)結(jié)構(gòu)。它 使交流和溝通更有明確的選擇和方向性;單一的思想和群體的智慧結(jié)合變得更 加有效;個(gè)人出版變成人人都可
15、以實(shí)現(xiàn)的夢(mèng)想。Blog 正在影響和改變著我們的 生活。 本系統(tǒng)采用 MVC 模式設(shè)計(jì)實(shí)現(xiàn)了一個(gè)簡單的博客系統(tǒng)。MVC 模式極大地提高 了系統(tǒng)的靈活性、復(fù)用性、開發(fā)效率、適應(yīng)性和可維護(hù)性,充分發(fā)揮了 JSP、Servlet 等 J2EE 組件的特點(diǎn)3。從而,使更多的人們通過文字、圖片、 聲音、視頻、無線等,盡情展示自我、分享感受、參與交流,美好你我生活。 Show you, share me,人人都可以博客,人人都需要博客。 1.3 本文的主要內(nèi)容本文的主要內(nèi)容 本系統(tǒng)是用 JSP 實(shí)現(xiàn)的一個(gè)完全基于瀏覽器的博客系統(tǒng),任何注冊(cè)個(gè)人博 客的人都擁有以下功能: (1)登錄博客系統(tǒng)的后臺(tái)管理平臺(tái)。 (
16、2)更改博客賬號(hào)的基本信息。 (3)撰寫日志。 (4)日志管理。 (5)評(píng)論管理。 (6)留言管理。 博客訪問者具有以下功能:瀏覽博客系統(tǒng)中的日志、留言、評(píng)論。 第 2 章 開發(fā)技術(shù) 2 第第 2 2 章章 開發(fā)技術(shù)開發(fā)技術(shù) 一些人可能已經(jīng)對(duì)微軟的 Active Server Pages(ASP)很熟悉了;JSP 在多 數(shù)方面與 ASP 功能相同但是具有平臺(tái)無關(guān)特性。他們都用來幫助 Web 內(nèi)容的開 發(fā)者們使用相對(duì)少的代碼創(chuàng)建動(dòng)態(tài)的網(wǎng)頁。一個(gè) JSP 頁面包含摻雜著 Java 代碼 的 HTML 代碼。 下面主要介紹下 JSP 的特點(diǎn): (1)將內(nèi)容的生成和顯示進(jìn)行分離使用 JSP 技術(shù),We
17、b 頁面開發(fā)人員可以使 用 HTML 或者 XML 標(biāo)識(shí)來設(shè)計(jì)和格式化最終頁面。 (2)JSP 技術(shù)源于 Java 語言。Java 語言是體系結(jié)構(gòu)中立的。這使 JSP 技術(shù) 可以在實(shí)現(xiàn)這個(gè) JSP 平臺(tái)的任何系統(tǒng)中運(yùn)行。這種途徑適合于異構(gòu)的網(wǎng)絡(luò)環(huán)境 和軟件的分發(fā)。 (3)JSP 系統(tǒng)是可移植的。這種可移植性來源于體系結(jié)構(gòu)中立性。 (4)強(qiáng)調(diào)可重用的組件。絕大多數(shù) JSP 頁面依賴于可重用的,跨平臺(tái)的組件 (JavaBeans 或者 Enterprise JavaBeansTM 組件)來執(zhí)行應(yīng)用程序所要求的更 為復(fù)雜的處理。 (5)采用標(biāo)識(shí)簡化頁面開發(fā) Web 頁面開發(fā)人員不會(huì)都是熟悉腳本語言的
18、編程 人員。JSP 技術(shù)封裝了許多功能,這些功能是在易用的、與 JSP 相關(guān)的 XML 標(biāo) 識(shí)中進(jìn)行動(dòng)態(tài)內(nèi)容生成所需要的。 (6)使用 JSP 標(biāo)識(shí)或者小腳本來生成頁面上的動(dòng)態(tài)內(nèi)容。生成內(nèi)容的邏輯被 封裝在標(biāo)識(shí)和 JavaBeans 組件中,并且捆綁在小腳本中,所有的腳本在服務(wù)器 端運(yùn)行。 (7)由于 JSP 頁面的內(nèi)置腳本語言是基于 Java 編程語言的,而且所有的 JSP 頁面都被編譯成為 Java Servlet,JSP 頁面就具有 Java 技術(shù)的所有好處,包括 健壯的存儲(chǔ)管理和安全性; (8)作為 Java 平臺(tái)的一部分,JSP 擁有 Java 編程語言“一次編寫,各處運(yùn) 行”的特點(diǎn)
19、。 當(dāng)客戶端請(qǐng)求一個(gè) JSP 網(wǎng)頁時(shí),JSP Engine 會(huì)檢查所請(qǐng)求的 JSP 網(wǎng)頁是否 已經(jīng)處于被載入執(zhí)行的狀態(tài),如果沒有,它會(huì)先讀取 JSP 程序文件,將它換成 Servlet 程序代碼編譯載入,然后才執(zhí)行請(qǐng)求的服務(wù)。也是就說,只有當(dāng)客戶 端第一次請(qǐng)求 JSP 網(wǎng)頁時(shí),才需要被轉(zhuǎn)換、編譯和載入,做到了一次執(zhí)行,處 處執(zhí)行。JSP 的 Servlet Class 是 JSP Engine 自動(dòng)幫我們編譯產(chǎn)生的,不像 Servlet 需要手動(dòng)編譯,另外,在 JSP 程序中建立新的對(duì)象和 Java Bean 非常 第 2 章 開發(fā)技術(shù) 3 方便容易。 2.1 JSP 的基礎(chǔ)的基礎(chǔ)Servle
20、t 技術(shù)技術(shù) Java Servlet 是 JSP 技術(shù)的基礎(chǔ),JSP 本身就是預(yù)先被編譯成 Servlet,然 后再運(yùn)行的,而且大型的 Web 應(yīng)用程序的開發(fā)需要 Java Servlet 和 JSP 配合才 能完成,Servlet 這個(gè)名稱大概源于 Applet,現(xiàn)在國內(nèi)的翻譯方式很多,本文 為了避免誤會(huì),本文直接采用 Servlet 這個(gè)名稱而不做任何翻譯,讀者如果愿 意,可以稱之為“小服務(wù)程序” 。Servlet 其實(shí)和傳統(tǒng)的 CGI 程序和 ISAPI、NSAPI 等 Web 程序開發(fā)工具的作用是相同的,在使用 Java Servlet 以 后,用戶不必再使用效率低下的 CGI 方式
21、,也不必使用只能在某個(gè)固定 Web 服 務(wù)器平臺(tái)運(yùn)行的 API 方式來動(dòng)態(tài)生成 Web 頁面。許多 Web 服務(wù)器都支持 Servlet,即使不直接支持 Servlet 的 Web 服務(wù)器也可以通過附加的應(yīng)用服務(wù)器 和模塊來支持 Servlet。得益于 Java 的跨平臺(tái)的特性,Servlet 也是平臺(tái)無關(guān) 的,實(shí)際上,只要符合 Java Servlet 規(guī)范,Servlet 是完全平臺(tái)無關(guān)且是 Web 服務(wù)器無關(guān)的。由于 Java Servlet 內(nèi)部是以線程方式提供服務(wù),不必對(duì)于每個(gè) 請(qǐng)求都啟動(dòng)一個(gè)進(jìn)程,并且利用多線程機(jī)制可以同時(shí)為多個(gè)請(qǐng)求服務(wù),因此 Java Servlet 效率非常高。
22、但 Java Servlet 也不是沒有缺點(diǎn),和傳統(tǒng)的 CGI、ISAPI、NSAPI 方式相同,Java Servlet 是利用輸出 HTML 語句來實(shí)現(xiàn)動(dòng)態(tài) 網(wǎng)頁的,如果用 Java Servlet 來開發(fā)整個(gè)網(wǎng)站,動(dòng)態(tài)部分和靜態(tài)頁面的整合過 程簡直就是一場噩夢(mèng)。這就是為什么 SUN 還要推出 Java Server Pages 的原因。 2.2 JavaBean 原理和機(jī)制原理和機(jī)制 JSP 的一大特點(diǎn)就是與 JavaBeans 的結(jié)合,而 JSP 與 JavaBeans 結(jié)合的一個(gè) 突出的優(yōu)點(diǎn)是頁面顯示和業(yè)務(wù)邏輯的分離。這可以使團(tuán)隊(duì)協(xié)作的更好,開發(fā)出 更高質(zhì)量的站點(diǎn)。 JavaBean
23、 是一種可以重用的 Java 組件,它類似于 COM,在 JSP 程序中常用 來封裝事物邏輯、數(shù)據(jù)庫操作等,可以很好的實(shí)現(xiàn)業(yè)務(wù)邏輯和前臺(tái)程序的分離, 使得系統(tǒng)具有更好的健壯性和靈活性。 事件處理是 JavaBeans 體系結(jié)構(gòu)的核心之一。通過事件處理機(jī)智,可以讓 一些組件作為事件源,發(fā)出可被描述環(huán)境或其他組件接受的事件。這樣,不同 的組件就可在構(gòu)造工具內(nèi)組合在一起,組件之間通過事件的傳遞進(jìn)行通信,構(gòu) 成一個(gè)應(yīng)用。從概念上講,事件是一種在“源對(duì)象”和“監(jiān)聽對(duì)象”之間、某 第 2 章 開發(fā)技術(shù) 4 種狀態(tài)發(fā)生變化的傳遞機(jī)智。事件有許多不同的用途,如:鼠標(biāo)事件、窗口邊 界改變事件、鍵盤事件等。在 J
24、ava 和 JavaBeans 中則是定義了一個(gè)一般的、可 擴(kuò)充的事件機(jī)制,它能夠: (1)對(duì)事件類型和傳遞模型的定義和擴(kuò)充提供一個(gè)公共框架,并適合于廣泛 的應(yīng)用。 (2)與 Java 語言和環(huán)境有較高的集成度。 事件能描述環(huán)境捕獲和被激發(fā)。能使其他構(gòu)造工具采取某種技術(shù)在設(shè)計(jì)時(shí) 直接控制事件,遺跡控制事件源和事件監(jiān)聽者之間的聯(lián)系。事件本身不依賴于 復(fù)雜的開發(fā)工具。 特別的,事件機(jī)制還應(yīng)當(dāng): (1)能夠發(fā)現(xiàn)制定的對(duì)象類可以生成的事件。 (2)能夠發(fā)現(xiàn)制定的對(duì)象類可以觀察監(jiān)聽到的事件。 (3)提供一個(gè)常規(guī)的注冊(cè)機(jī)制,允許動(dòng)態(tài)操縱事件源與事件監(jiān)聽者之間的關(guān) 系。 (4)不需要其他的虛擬機(jī)和語言即可實(shí)
25、現(xiàn)。 (5)事件源與監(jiān)聽者之間可進(jìn)行高效的事件傳遞。 (6)能完成 JavaBean 事件模型與相關(guān)的其他組件體系結(jié)構(gòu)事件模型的中立 映射。 JSP 和 ASP.NET 同樣是網(wǎng)站開發(fā)中常用的開發(fā)工具。但是,ASP 是微軟的產(chǎn) 品,其應(yīng)用只能是在 Windows 平臺(tái)上,移植性差,而且以源代碼的形式存放在 服務(wù)器端,安全性差。每次由服務(wù)器解釋運(yùn)行,運(yùn)行效率不高。Jsp 頁面文件 執(zhí)行時(shí)被編譯成字節(jié)代碼,由客戶端流覽的 Java 虛擬機(jī)解釋執(zhí)行,不再是源代 碼,因此執(zhí)行效率和安全性高。將數(shù)據(jù)庫連接的重要信息存放在 JavaBean 文件 后,可以編譯成虛擬機(jī)才能解釋的字節(jié)代碼,確保了數(shù)據(jù)庫的安全
26、。 在 ASP 技術(shù)里,通過 Web 頁面要實(shí)現(xiàn)一些特定的功能比較困難,比如基于 網(wǎng)頁的報(bào)表,打印實(shí)現(xiàn)起來就比較麻煩。ASP 提供的解決方案是自己開發(fā)組件, 通過在服務(wù)器端注冊(cè)組件,成為獨(dú)立的可以重復(fù)利用的模塊供讀者調(diào)用。因此 要求讀者需要掌握比較復(fù)雜的變成語言的開發(fā)技術(shù)。在 JSP 開發(fā)技術(shù)里,可以 通過開發(fā) JavaBean 文件實(shí)現(xiàn)同樣的功能,JavaBean 不需要注冊(cè),只要放置在 相應(yīng)的目錄下就可以運(yùn)行??梢詫?shí)現(xiàn) ASP 的 COM 組件同樣的功能。此外 JSP 推 出主要就是考慮到平臺(tái)的無關(guān)性。JSP 代碼可以在 APACHE、IIS 等服務(wù)器上執(zhí) 行,支持大部分操作系統(tǒng)。JSP
27、繼承 JAVA 技術(shù)的優(yōu)點(diǎn):一次運(yùn)行,處處運(yùn)行。 鑒于此,本系統(tǒng)決定使用 JSP 作為開發(fā)工具。下面簡單介紹一下相關(guān)的其他 工具: 第 2 章 開發(fā)技術(shù) 5 2.3 開發(fā)平臺(tái):開發(fā)平臺(tái):Eclipse+dreamweaver Eclipse 是一個(gè)開放源代碼的軟件開發(fā)項(xiàng)目,專注于為高度集成的工具開發(fā) 提供一個(gè)全功能的、具有商業(yè)品質(zhì)的工業(yè)平臺(tái)。它主要由 Eclipse 項(xiàng)目、 Eclipse 工具項(xiàng)目和 Eclipse 技術(shù)項(xiàng)目三個(gè)項(xiàng)目組成,具體包括四個(gè)部分組成 Eclipse Platform、JDT、CDT 和 PDE.JDT 支持 Java 開發(fā)、CDT 支持 C 開發(fā)、 PDE 用來支持
28、插件開發(fā),Eclipse Platform 則是一個(gè)開放的可擴(kuò)展 IDE,提供 了一個(gè)通用的開發(fā)平臺(tái)。它提供建造塊和構(gòu)造并運(yùn)行集成軟件開發(fā)工具的基礎(chǔ)。 Eclipse Platform 允許工具建造者獨(dú)立開發(fā)與他人工具無縫集成的工具從而無 須分辨一個(gè)工具功能在哪里結(jié)束,而另一個(gè)工具功能在哪里開始。 Dreamweaver MX 是一款專業(yè)的 HTML 編輯器,用于對(duì) Web 站點(diǎn)、Web 頁 和 Web 應(yīng)用程序進(jìn)行設(shè)計(jì)、編碼和開發(fā)。無論您喜歡直接編寫 HTML 代碼的駕 馭感還是偏愛在可視化編輯環(huán)境中工作,Dreamweaver 都會(huì)為您提供幫助良多 的工具,豐富您的 Web 創(chuàng)作體驗(yàn)。 利
29、用 Dreamweaver 中的可視化編輯功能,您可以快速地創(chuàng)建頁面而無需編 寫任何代碼。不過,如果您更喜歡用手工直接編碼,Dreamweaver 還包括許多 與編碼相關(guān)的工具和功能。并且,借助 Dreamweaver,您還可以使用服務(wù)器語 言(例如 ASP、ASP.NET、ColdFusion 標(biāo)記語言 (CFML) 、JSP 和 PHP)生成 支持動(dòng)態(tài)數(shù)據(jù)庫的 Web 應(yīng)用程序。 2.42.4 SQLSQL SERVERSERVER 2002005 5 SQL Server 2005 作為 Microsoft 家庭的重要成員,是基于客戶機(jī)/服務(wù)器 的大型關(guān)系數(shù)據(jù)庫系統(tǒng)。SQL Server
30、 2005 這種關(guān)系型數(shù)據(jù)庫系統(tǒng)能夠滿足各 種類型的企業(yè)客戶和獨(dú)立軟件供應(yīng)商構(gòu)建商業(yè)應(yīng)用程序的需求,根據(jù)客戶的反 映和需求,是大規(guī)模聯(lián)機(jī)事務(wù)處理(OLTP) 、數(shù)據(jù)倉庫和電子商務(wù)應(yīng)用程序的優(yōu) 秀數(shù)據(jù)庫平臺(tái)。SQL Server 2005 具有以下特點(diǎn)8: (1)強(qiáng)大可伸縮性; (2)支持大型 Web 站點(diǎn)或企業(yè)信息處理系統(tǒng); (3)客戶機(jī)/服務(wù)器體系結(jié)構(gòu); 而數(shù)據(jù)源包含了數(shù)據(jù)庫位置和數(shù)據(jù)庫類型等信息,實(shí)際上是一種數(shù)據(jù)連接 的抽象。各部件之間的關(guān)系如圖 2.1 所示: 第 2 章 開發(fā)技術(shù) 6 應(yīng)用程序 ODBC 管理器ODBC API sql 驅(qū)動(dòng)程序管理器 數(shù)據(jù)源名 (DSN) ODBC 驅(qū)
31、動(dòng)程序 數(shù)據(jù)源 ODBC 層 數(shù)據(jù)層 應(yīng)用層 圖 2.1 數(shù)據(jù)關(guān)系圖 第 3 章 分析與設(shè)計(jì) 7 第第 3 3 章章 分析與設(shè)計(jì)分析與設(shè)計(jì) 3.13.1 業(yè)務(wù)流分析業(yè)務(wù)流分析及流程圖及流程圖 用戶首先需要登錄該系統(tǒng)得到權(quán)限后才能對(duì)系統(tǒng)進(jìn)行操作,為注冊(cè)用戶可 以直接進(jìn)入注冊(cè)模塊進(jìn)行注冊(cè)。登錄系統(tǒng)后確定權(quán)限,只有管理員權(quán)限,才能 對(duì)系統(tǒng)進(jìn)行維護(hù)。普通用戶可以對(duì)個(gè)人主頁進(jìn)行管理,管理的板塊包括:日記、 相冊(cè)、留言、好友、公告以及群。 個(gè)人博客系統(tǒng)業(yè)務(wù)流程圖,如圖 3.1 所示: 登錄 是否登錄 是否管理員 個(gè)人主頁 文章管理相冊(cè)管理留言管理好友管理友情鏈接 N 后臺(tái)管理 Y Y 系統(tǒng)注冊(cè) N 圖 3
32、.1 博客業(yè)務(wù)流程圖 3.2 數(shù)據(jù)流圖數(shù)據(jù)流圖分析分析 系統(tǒng)運(yùn)行過程中,主要涉及到兩部分的數(shù)據(jù)流向,一部分是管理員在系統(tǒng) 后臺(tái)管理界面上發(fā)出的對(duì)數(shù)據(jù)庫操作的數(shù)據(jù)流,另一部分是用戶在應(yīng)用前臺(tái)使 用系統(tǒng)時(shí)所產(chǎn)生的數(shù)據(jù)流。如圖 3.2 所示: 第 3 章 分析與設(shè)計(jì) 8 用用戶戶 注注冊(cè)冊(cè)用用戶戶信信息息表表有有效效信信息息 發(fā)發(fā)表表 日日志志 發(fā)發(fā)表表 評(píng)評(píng)論論 注注冊(cè)冊(cè) 有有效效 信信息息 無無效效 信信息息 有有效效日日志志 無無效效 日日志志 有有效效評(píng)評(píng)論論 無無效效評(píng)評(píng)論論 有有效效圖圖片片 無無效效圖圖片片 管管理理員員注注冊(cè)冊(cè) 有有效效信信息息 管管理理員員信信息息表表 無無效效信信
33、息息 有有效效 信信息息 管管理理 用用戶戶 用用戶戶信信息息表表 用用戶戶信信息息表表 用用戶戶信信息息表表 管管理理 日日志志 管管理理 評(píng)評(píng)論論 管管理理 評(píng)評(píng)論論 圖 3.2 數(shù)據(jù)流圖 3.3 功能模塊設(shè)計(jì)功能模塊設(shè)計(jì) 博客信息管理系統(tǒng)分為面向網(wǎng)絡(luò)用戶的前臺(tái)及面向個(gè)人博客維護(hù)管理的后 臺(tái),依據(jù)博客網(wǎng)站中所要實(shí)現(xiàn)的基本功能的設(shè)定,將所有功能分解為如下四個(gè) 主要的功能模塊來加以實(shí)現(xiàn)。用戶以合法的用戶名及密碼登錄,系統(tǒng)即可按該 登錄用戶的權(quán)限分配操作模塊。 3.3.13.3.1 博客注冊(cè)登錄管理模塊博客注冊(cè)登錄管理模塊 博客注冊(cè)登錄管理模塊用于建立博客網(wǎng)站固定的客戶群體,通過記錄對(duì)應(yīng) 的博客
34、檔案,實(shí)現(xiàn)對(duì)博客信息的后臺(tái)維護(hù)及管理,同時(shí)也便于通過博客檔案庫 將網(wǎng)站最新動(dòng)態(tài)及相關(guān)企業(yè)的信息方便地傳達(dá)給每一位潛在的客戶。 該功能模塊實(shí)現(xiàn)了以下幾個(gè)子功能。 (1)新博客在線注冊(cè)。 (2)博客登錄管理。 (3)跳轉(zhuǎn)到博客主頁。 只有進(jìn)行登錄并通過身份驗(yàn)證的用戶,才可以在個(gè)人博客頁面發(fā)表日志, 并借助個(gè)人設(shè)置實(shí)現(xiàn)對(duì)個(gè)人博客相關(guān)信息的管理維護(hù)。對(duì)于沒有經(jīng)過身份驗(yàn)證 的網(wǎng)絡(luò)用戶不允許在博客頁面中發(fā)表日志,更不允許對(duì)博客頁面信息進(jìn)行管理 維護(hù)。 該模塊實(shí)現(xiàn)新博客的注冊(cè)及登錄驗(yàn)證功能。其中,注冊(cè)新博客時(shí)會(huì)對(duì)用戶 輸入的注冊(cè)信息進(jìn)行有效性驗(yàn)證,包括基本數(shù)據(jù)格式的有效性以及邏輯有效性, 例如,用戶名被占用
35、時(shí)將及時(shí)給出提示。注冊(cè)成功的博客登錄時(shí),會(huì)隨時(shí)根據(jù) 博客輸入的登錄信息進(jìn)行提示,如用戶名錯(cuò)誤或者密碼錯(cuò)誤。 第 3 章 分析與設(shè)計(jì) 9 3.3.23.3.2 博客及文章檢索查詢模塊博客及文章檢索查詢模塊 博客及文章檢索查詢模塊為網(wǎng)絡(luò)用戶提供便捷的搜索,以及日志閱讀瀏覽 等功能,同時(shí)對(duì)日志的評(píng)論信息、博客推薦也能夠及時(shí)反饋給網(wǎng)絡(luò)用戶。 該功能模塊實(shí)現(xiàn)了以下幾個(gè)子功能。 (1)熱門博客頁面推薦。 (2)最新博客日志推薦。 (3)日志信息關(guān)鍵字搜索。 該模塊能夠在網(wǎng)頁中隨時(shí)提供在線的最新日志信息。該信息需要定期更新, 網(wǎng)絡(luò)用戶可以隨時(shí)獲得最新日志以及最熱門的博客推薦。在客戶選擇了某個(gè)博 客或者某個(gè)感
36、興趣的日志后,可以方便地跳轉(zhuǎn)到對(duì)應(yīng)博客頁面進(jìn)行日志的閱讀, 并和博客進(jìn)行交流互動(dòng)。 為了使網(wǎng)絡(luò)用戶盡快定位到所需的博客資料及日志信息,本模塊提供了搜 索功能,用戶可以對(duì)所關(guān)注的日志信息按照標(biāo)題進(jìn)行關(guān)鍵字搜索,以避免用戶 瀏覽多個(gè)頁面來尋找所需的日志信息。 3.3.33.3.3 博客頁面顯示模塊博客頁面顯示模塊 當(dāng)網(wǎng)絡(luò)用戶進(jìn)入某個(gè)人博客主頁后,在該頁面中將提供博客日志列表的顯 示,同時(shí)為了方便用戶瀏覽,在該模塊中提供根據(jù)分類名進(jìn)行日志列表的顯示, 也提供日志評(píng)論的瀏覽,此外還允許用戶在博客頁面中發(fā)表評(píng)論及留言。 該功能模塊實(shí)現(xiàn)了如下幾個(gè)子功能。 (1)用戶可以分頁查看對(duì)應(yīng)的日志內(nèi)容及評(píng)論信息。
37、(2)用戶可以針對(duì)日志內(nèi)容發(fā)表評(píng)論。 (3)用戶可以針對(duì)博客進(jìn)行留言。 (4)用戶可以分類查看日志內(nèi)容。 在該模塊中還提供了博客頁面統(tǒng)計(jì)信息,日志、評(píng)論及留言信息分頁顯示 等方便用戶的顯示效果。 3.3.43.3.4 博客個(gè)人管理維護(hù)模塊博客個(gè)人管理維護(hù)模塊 博客個(gè)人維護(hù)管理模塊用于實(shí)現(xiàn)用戶對(duì)博客個(gè)人主頁及相關(guān)信息的動(dòng)態(tài)管 理。該功能模塊實(shí)現(xiàn)了如下幾個(gè)子功能: (1)日志及日志分類管理。 第 3 章 分析與設(shè)計(jì) 10 (2)評(píng)論及留言管理。 (3)個(gè)人基本信息維護(hù)管理。 借助該模塊,用戶可以隨時(shí)對(duì)個(gè)人博客主頁中的內(nèi)容進(jìn)行增加或修改,包 括日志分類信息的更新、評(píng)論及留言管理等功能,也允許用戶對(duì)博
38、客的個(gè)人信 息進(jìn)行維護(hù)及其管理。如圖 3.3 所示: 博客信息管理系統(tǒng)前臺(tái) 博客展示日志展示評(píng)論展示留言展示用戶管理 熱 點(diǎn) 博 客 最 新 日 志 日 志 列 表 最 新 留 言 用 戶 登 陸 用 戶 注 冊(cè) 查詢管理 日 志 查 詢 發(fā) 表 留 言 博 客 列 表 最 新 博 客 精 華 日 志 最 新 評(píng) 論 發(fā) 表 評(píng) 論 博 客 查 詢 圖 3.3 博客信息系統(tǒng)前臺(tái)功能結(jié)構(gòu)圖 后臺(tái)模塊功能結(jié)構(gòu)如圖 3.4 所示。 博客管理員 個(gè)人信息管理日志管理評(píng)論管理留言管理分類管理 登 陸 注 冊(cè) 修 改 個(gè) 人 信 息 撰 寫 日 志 刪 除 日 志 修 改 日 志 刪 除 評(píng) 論 回 復(fù)
39、評(píng) 論 刪 除 留 言 回 復(fù) 留 言 添 加 分 類 刪 除 分 類 修 改 分 類 圖 3.4 博客信息系統(tǒng)后臺(tái)功能結(jié)構(gòu)圖 3.43.4 數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫設(shè)計(jì) E-RE-R 圖圖 為了把用戶的數(shù)據(jù)要求清晰明確地表達(dá)出來,通常要建立一個(gè)概念性的數(shù) 據(jù)模型。概念性數(shù)據(jù)模型是一種面向問題的數(shù)據(jù)模型,是按照用戶的觀點(diǎn)來對(duì) 數(shù)據(jù)和信息建模。描述了從用戶角度看到的數(shù)據(jù),反映了用戶的現(xiàn)實(shí)環(huán)境。 第 3 章 分析與設(shè)計(jì) 11 最常用的表示概念性數(shù)據(jù)模型的方法,是實(shí)體聯(lián)系方法(Entity Relationship Approach) 。這種方法用 ER 圖描述現(xiàn)實(shí)世界中的實(shí)體,而不涉及 這些實(shí)體在系統(tǒng)中的
40、實(shí)現(xiàn)方法。用這種方法表示的概念性數(shù)據(jù)模型又稱為 ER 模 型。ER 模型中包含“實(shí)體” , “聯(lián)系”和“屬性” 。 博客信息管理系統(tǒng)涉及的實(shí)體包括: (1)用戶:用戶 ID、用戶名稱、用戶密碼、博客主題、說明、E-mail、注 冊(cè)日期、發(fā)表日志數(shù)。 (2)類別:類別編號(hào)、類別名、類別描述、用戶 ID。 (3)日志:日志編號(hào)、日志標(biāo)題、日志內(nèi)容、類別編號(hào)、發(fā)表日期、最后 修改日期、用戶 ID、瀏覽次數(shù)、評(píng)論數(shù)。 (4)評(píng)論:評(píng)論編號(hào)、評(píng)論標(biāo)題、評(píng)論內(nèi)容、發(fā)表日期、最后回復(fù)日期、 評(píng)論人、日志編號(hào)。 (5)留言:留言編號(hào)、留言標(biāo)題、留言內(nèi)容、發(fā)表日期、最后回復(fù)日期、 留言人、用戶 ID。 綜合本系
41、統(tǒng)各子模塊要實(shí)現(xiàn)的功能,通過前面對(duì)博客信息系統(tǒng)數(shù)據(jù)的分析 可以得到:用戶表、類別表、日志表、日志評(píng)論表、留言表的數(shù)據(jù)庫概念模型 (E-R 圖)。 用戶實(shí)體屬性圖如圖 3.5 所示。 ID 用戶名 密碼 主題說明 E-mail 注冊(cè)日期 發(fā)表日志數(shù) 博客管理員 圖 3.5 用戶實(shí)體屬性圖 日志類別實(shí)體屬性圖如圖 3.6 所示。 ID 類別名類別描述 所屬博客ID 日志類別 圖 3.6 日志類別實(shí)體屬性圖 第 3 章 分析與設(shè)計(jì) 12 日志實(shí)體屬性圖如圖 3.7 所示。 ID 日志標(biāo)題 日志內(nèi)容 類別ID 發(fā)表時(shí)間 最后修改時(shí)間 所屬博客ID 評(píng)論數(shù) 瀏覽次數(shù) 日志 圖 3.7 日志實(shí)體屬性圖 日
42、志評(píng)論實(shí)體屬性圖如圖 4.4 所示。 ID 評(píng)論標(biāo)題 評(píng)論內(nèi)容 發(fā)表時(shí)間 最后回復(fù)時(shí)間 評(píng)論者名字 評(píng)論日志ID 日志評(píng)論 圖 3.8 日志評(píng)論實(shí)體屬性圖 留言實(shí)體屬性圖如圖 3.8 所示。 ID 留言標(biāo)題 留言內(nèi)容 發(fā)表時(shí)間 最后回復(fù)時(shí)間 留言者名字 博客ID 日志評(píng)論 圖 3.9 留言實(shí)體屬性圖 3.53.5 系統(tǒng)數(shù)據(jù)表設(shè)計(jì)系統(tǒng)數(shù)據(jù)表設(shè)計(jì) (1)用戶表,此表主要用于保存用戶的基本信息。其結(jié)構(gòu)如表 3.1 所示。 第 3 章 分析與設(shè)計(jì) 13 表 3.1 用戶表 列名含義類型長度缺省值允許空 BlogID 用戶編號(hào) Int4 無否 UserName 用戶名 Varchar20 無否 Pass
43、word 用戶密碼 Varchar20 無否 NickName 博客主題 Varchar50 無否 Description 博客描述 Varchar100 無是 Email 電子郵件 Email50 無否 RegisterTime 注冊(cè)日期 Datetime8 無否 ArticleNum 發(fā)表的日志數(shù) Int40 否 (2)日志表,此表主要用于保存日志的基本信息。其結(jié)構(gòu)如表 3.2 所示。 表 3.2 日志表 列名含義類型長度缺省值允許空 ArticleID 日志編號(hào) Int4 無否 Title 日志標(biāo)題 Varchar50 無否 Content 日志內(nèi)容 text8 無否 CategoryI
44、D 類別 ID int4 無否 PublishTime 日志發(fā)表時(shí)間 Datetime8 無否 LastModifyTime 日志最后修改時(shí)間 Datetime8 無否 BlogID 用戶 ID Int4 無否 ReadTimes日志瀏覽次數(shù)Int40否 FeedBackNum日志評(píng)論數(shù)Int40否 (3)日志評(píng)論表,此表主要用于保存日志評(píng)論的基本信息。其結(jié)構(gòu)如表 3.3 所示。 第 3 章 分析與設(shè)計(jì) 14 表 3.3 日志評(píng)論表 列名含義類型長度缺省值允許空 FeedBackID 評(píng)論編號(hào) Int4 無否 Title 評(píng)論標(biāo)題 Varchar20 無否 Content 評(píng)論內(nèi)容 Text8
45、 無否 PublishTime 發(fā)表時(shí)間 Datetime8 無否 UserName 用戶名 Varchar20 無否 ArticleID 日志 ID Int4 無否 (4)留言表,此表主要用于保存留言的基本信息。其結(jié)構(gòu)如表 3.4 所示。 表 3.4 留言表 列名含義類型長度缺省值允許空 MessageID 留言編號(hào) Int4 無否 Title 留言標(biāo)題 Varchar20 無否 Content 留言內(nèi)容 text8 無否 PublishTime 發(fā)表時(shí)間 Datetime8 無否 LastModifyTime 最后回復(fù)時(shí)間 Datetime8 無否 UserName 用戶名 Varchar
46、20 無否 BlogID 用戶 ID Int4 無否 (5)類別表,此表用于保存日志類別的基本信息。其結(jié)構(gòu)如表 3.5 所示。 表 3.5 類別表 列名含義類型長度缺省值允許空 CategoryID 類別編號(hào) Int4 無否 Name 類別名 Varchar20 無否 Description 類別描述 Varchar100 無是 BlogID 用戶編號(hào) Int4 無否 第 4 章 系統(tǒng)實(shí)現(xiàn) 15 第第 4 4 章章 系統(tǒng)實(shí)現(xiàn)系統(tǒng)實(shí)現(xiàn) 4.1 系統(tǒng)主界面系統(tǒng)主界面 該界面為該系統(tǒng)的首頁,顯示出最新日志,最熱日志等。訪客只要一進(jìn)入 該網(wǎng)站,就可以看到該頁面。并通過該頁面進(jìn)入留言板、日志、發(fā)表評(píng)論等
47、其 他感興趣的頁面。系統(tǒng)主界面如圖 4.1 所示: 圖 4.1 系統(tǒng)主界面 4.1.14.1.1 注冊(cè)模塊注冊(cè)模塊的實(shí)現(xiàn)的實(shí)現(xiàn) 訪客可以通過該界面注冊(cè)成為該系統(tǒng)的注冊(cè)用戶,擁有自己的博客空間。 界面如圖 4.2 所示: 第 4 章 系統(tǒng)實(shí)現(xiàn) 16 圖 4.2 用戶注冊(cè)界面 部分代碼如下: protected void Button1_Click(object sender, EventArgs e) /連接數(shù)據(jù)庫,使用存儲(chǔ)過程 CheckUser,查看該用戶名是否已經(jīng)存在 SqlCommand command = new SqlCommand(“CheckUser”, conn); SqlDa
48、taReader dr=command.ExecuteReader(); if (CheckBox1.Checked) /如果同意注冊(cè)條款,則可以進(jìn)行注冊(cè) if (dr.Read() /如果用戶名已經(jīng)存在,則注冊(cè)失敗 Response.Write(“window.alert(注冊(cè)失敗:已有該用戶名!);”); else /如果用戶名不存在,則在數(shù)據(jù)庫中保存新注冊(cè)用戶的信息 command = new SqlCommand(“InsertUser”, conn); SqlParameter RegisterName = command.Parameters.Add(“name”, SqlDbTy
49、pe.NVarChar, 30); /傳遞各個(gè)參數(shù)的值 RegisterName.Value = TextBoxName.Text; Session”username” = TextBoxName.Text.Trim(); 第 4 章 系統(tǒng)實(shí)現(xiàn) 17 else /如果不同意注冊(cè)條款,則不能進(jìn)行注冊(cè) Response.Write(“window.alert(不同意注冊(cè)協(xié)議不能注冊(cè)! ); ”); 4.1.24.1.2 發(fā)表評(píng)論模塊發(fā)表評(píng)論模塊 發(fā)表評(píng)論的界面如圖 4.3 所示: 圖 4.3 發(fā)表評(píng)論界面 部分代碼如下: protected void ButtonOk_Click(object s
50、ender, EventArgs e) if (TextBox1.Text=” ”) author = “匿名”; /如果作者沒填,則默認(rèn)為匿名 else author = TextBox1.Text; /獲取評(píng)論的作者 SqlCommand command = new SqlCommand(“insertComment”, conn); /添加參數(shù) SqlParameter log_ID = command.Parameters.Add(“l(fā)og_ID”,SqlDbType.Int); /傳遞參數(shù)的值 log_ID.Value =Session”log_ID”; SqlParameter c
51、omm_subject = command.Parameters.Add(“comm_subject”, SqlDbType.VarChar, 30); comm_subject.Value=this.labSubject.Text; SqlParameter comm_content = command.Parameters.Add(“comm_content”, SqlDbType.NText); comm_content.Value =TextBox2.Text; 第 4 章 系統(tǒng)實(shí)現(xiàn) 18 SqlParameter comm_author = command.Parameters.Ad
52、d(“comm_author”, SqlDbType.VarChar,30); comm_author.Value = author; int number = command.ExecuteNonQuery(); if (number window.alert(發(fā)表評(píng)論失??!);”); else Response.Write(“window.alert(發(fā)表評(píng)論成功!);”); 4.1.34.1.3 刪除日志模塊刪除日志模塊 如果需要?jiǎng)h除已發(fā)表的日志,可單擊日志管理顯示界面中的刪除日志鏈接, 將彈出刪除日志確認(rèn)對(duì)話框圖如圖4.4所示。 圖 4.4 刪除日志確認(rèn)對(duì)話框圖 再次確認(rèn)用戶是否真的要
53、進(jìn)行該日志的刪除操作,而不是誤操作。點(diǎn)擊確 定按鈕完成日志刪除操作,點(diǎn)擊取消按鈕取消該刪除操作。 完成日志刪除操作的核心代碼如下: try conn=DB.getConnetion(); /禁止自動(dòng)提交,設(shè)置回滾點(diǎn) conn.setAutoCommit(false); stmt=conn.createStatement(); /刪除該日志的所有評(píng)論 stmt.prepareStatement(“delete from feedback where articleid=?”); stmt.setInt(1,articleid); stmt.executeUpdate(); /刪除該日志 stmt
54、.prepareStatement(“delete from article where articleid=?”); stmt.setInt(1,articleid); stmt.executeUpdate(); mit(); /事務(wù)提交 catch(Exception ex) ex.printStackTrace(); 第 4 章 系統(tǒng)實(shí)現(xiàn) 19 try conn.rollback(); /操作不成功則回滾 catrch(Exception e) e.printStackTrace(); finally try stmt.close(); conn.close(); catch(Excep
55、tion e) e.printStackTrace(); 4.24.2 修改個(gè)人資料界面修改個(gè)人資料界面 圖 4.5 個(gè)人資料修改界面 博主登陸后點(diǎn)擊個(gè)人信息,查看個(gè)人信息點(diǎn)擊修改出現(xiàn)圖4.5界面進(jìn)行修改, 其核心代碼是: protected void btn_Click(object sender, EventArgs e) TbBoZhu item = new TbBoZhu(); item.AdminID = Convert.ToInt32(Request.QueryString“id“); item.Birthday = txtbirthday.Text; item.Hobby = t
56、xthobby.Text; item.NickName = txtnickname.Text; item.Sex = txtsex.Text; 第 4 章 系統(tǒng)實(shí)現(xiàn) 20 item.SuoZaiDi = txtsuozaidi.Text; item.XingZuo = txtxingzuo.Text; if (flPicPath.FileName=“) item.Photo = imgphoto.ImageUrl.Replace(“Pics/“,“); else DateTime now = DateTime.Now; item.Photo = now.ToFileTime().ToStrin
57、g(“) + flPicPath.FileName; if (BoZhuManage.Update(item) if (flPicPath.FileName != “) flPicPath.SaveAs(Server.MapPath(“) + “Pics“ +item.Photo); Response.Write(“alert(修改成功!);“); else Response.Write(“alert(修改失敗,請(qǐng)稍后重試!);“); Response.Write(“l(fā)ocation.href=UserInfo.aspx;“); 4.34.3 上傳圖片界面上傳圖片界面 上傳圖片包括圖片名稱,路
58、徑,介紹信息通過提交按鈕錄入數(shù)據(jù)庫中17如圖4.6 所示: 圖 4.6 圖片上傳界面 第 4 章 系統(tǒng)實(shí)現(xiàn) 21 核心代碼: protected void btnAdd_Click(object sender, EventArgs e) /生成存入的圖片名稱 DateTime now = DateTime.Now; string imageName = now.ToFileTime().ToString(“) + flPicPath.FileName; /通過相對(duì)獲取物理路徑 string path = Server.MapPath(“) + “Pics“ + imageName; /創(chuàng)建對(duì)象
59、,并賦值 TbPics item = new TbPics(); item.PicName = txtPicName.Text; item.PicPath = imageName; item.PicDesc = txtPicDesc.Text; /執(zhí)行添加操作 if (PicsManage.Add(item) /如果成功,則上傳圖片 flPicPath.SaveAs(path); Response.Write(“alert(添加成功!);“); else Response.Write(“alert(添加失敗,請(qǐng)稍后重試!);“); Response.Write(“l(fā)ocation.href=P
60、ics.aspx;“); 4.44.4 系統(tǒng)主要功能模塊系統(tǒng)主要功能模塊的實(shí)現(xiàn)的實(shí)現(xiàn) 4.4.4 4.1.1 身份驗(yàn)證身份驗(yàn)證 管理員通過此登陸入口進(jìn)入管理界面,此入口需要填寫正確的 ID 才能夠登 陸,非法 ID 不能夠登陸,其界面如圖 4.7 所示: 第 4 章 系統(tǒng)實(shí)現(xiàn) 22 圖 4.7 管理員登錄界面 一個(gè)系統(tǒng)能正常使用,安全性是非常重要的一個(gè)部分。安全性是對(duì)用戶的生 份進(jìn)行驗(yàn)證并通過驗(yàn)證的用戶按照為其授予的訪問權(quán)限來確定用戶是否可以訪 問某資源的一個(gè)過程。為了保證系統(tǒng)的安全,為了保證應(yīng)用程序的安全,本系 統(tǒng)采用了身份驗(yàn)證技術(shù)。 該代碼表示系統(tǒng)禁止對(duì)ST_login目錄下的ST_adm
61、in進(jìn)行匿名訪問.如果存在 匿名用戶,系統(tǒng)將自動(dòng)驗(yàn)證用戶名,提示錯(cuò)誤信息。保證了系統(tǒng)的安全.關(guān)鍵代碼 如下: 實(shí)現(xiàn)此功能的關(guān)鍵代碼為: protected void Button1_Click(object sender, System.EventArgs e) OleDbCommand ST_myCmd = new OleDbCommand(“select * from ST_admin where ST_admin_user=“ + adminname.Text.Trim() + “ and ST_admin_psw=“ + adminpsw.Text.Trim() + “, ST_myC
62、onn); ST_myConn.Open(); OleDbDataReader ST_read = ST_myCmd.ExecuteReader(); if (ST_read.Read() Session“UserName“ = ST_read0.ToString(); Response.Redirect(“ST_admin.aspx“); else Response.Write(“alert(用戶名和密碼不對(duì))“); 4.4.24.4.2 后臺(tái)文章添加管理后臺(tái)文章添加管理 管理員可以在此頁面操作管理功能,這些功能可以對(duì)主頁進(jìn)行添加、刪除、 第 4 章 系統(tǒng)實(shí)現(xiàn) 23 修改等操作,如圖 4.8
63、 所示: 圖 4.8 管理員操作界面 實(shí)現(xiàn)此功能的關(guān)鍵代碼為: public void ST_Save_Add() string ST_n_title = HtmlEncode(Request.Form“n_title“); string ST_n_author = HtmlEncode(Request.Form“n_author“); string ST_n_key = HtmlEncode(Request.Form“n_key“); string ST_n_content = Request.Form“n_content“.Replace(“, “); int ST_cmd; if (Re
64、quest.Form“n_iscmd“ != null) ST_cmd = 1; else ST_cmd = 0; if (ST_n_title = “ | ST_n_key = “ | ST_n_content = “) Response.Write(“標(biāo)題,摘要,內(nèi)容不能為空! 點(diǎn)此返回“); Response.End(); else string ST_sql = “insert into ST_news (ST_n_author,ST_n_title,ST_n_key,ST_n_content,ST_c_id,ST_n_iscmd) values (“ + ST_n_author +
65、“,“ + ST_n_title + “,“ + ST_n_key + “,“ + ST_n_content + “,“ + Request.Form“l(fā)isttype“ + “,“ + ST_cmd + “)“; OleDbCommand ST_myCmd = new OleDbCommand(ST_sql, ST_myConn); ST_myConn.Open(); ST_myCmd.ExecuteNonQuery(); ST_myConn.Close(); Response.Redirect(“ST_main.aspx“); 第 4 章 系統(tǒng)實(shí)現(xiàn) 24 4.4.34.4.3 后臺(tái)文章類別管理后臺(tái)文章類別管理 圖 4.9 類別管理界面 protected void Page_Load(object sender, System.EventArgs e) string ST_dns = ConfigurationSettings.AppSettings“conn“; ST_myConn = new OleDbConnection(ST_dns); ST_Type_List_Bind(); private
- 溫馨提示:
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. 裝配圖網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識(shí)競賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識(shí)測試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測工種技術(shù)比武題庫含解析
- 1 礦山應(yīng)急救援安全知識(shí)競賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案