計(jì)算機(jī)專業(yè)畢業(yè)論文-asp.net新聞發(fā)布系統(tǒng)_第1頁
計(jì)算機(jī)專業(yè)畢業(yè)論文-asp.net新聞發(fā)布系統(tǒng)_第2頁
計(jì)算機(jī)專業(yè)畢業(yè)論文-asp.net新聞發(fā)布系統(tǒng)_第3頁
計(jì)算機(jī)專業(yè)畢業(yè)論文-asp.net新聞發(fā)布系統(tǒng)_第4頁
計(jì)算機(jī)專業(yè)畢業(yè)論文-asp.net新聞發(fā)布系統(tǒng)_第5頁
已閱讀5頁,還剩39頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、貴州師范大學(xué)(本科)畢業(yè)論文學(xué)科代碼:080605學(xué)號(hào):060702010001貴州師范大學(xué)(本科)畢業(yè)論文題目:新聞發(fā)布系統(tǒng) 學(xué)院:數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)年級(jí):2006級(jí)作者:汪州 指導(dǎo)教師姓名及職稱:王祥斌(講師) 完成時(shí)間:2010年4月10日新聞發(fā)布系統(tǒng)汪州摘要: asp.net是新一代web應(yīng)用程序開發(fā)平臺(tái),它是一個(gè)已編譯的、基于.net的開發(fā)環(huán)境,它提供了生成企業(yè)級(jí)應(yīng)用程序所必需的全部服務(wù),基于 .net framework 生成,整個(gè)框架都可用于任何 asp.net 應(yīng)用程序。可以使用任何與公共語言運(yùn)行庫(clr)兼容的語言(包括 visual basic.n

2、et、c# 和 jscript .net)來創(chuàng)建應(yīng)用程序。該系統(tǒng)使用asp.net(c#語言)和ado.net技術(shù)開發(fā), 實(shí)現(xiàn)了網(wǎng)站新聞的動(dòng)態(tài)管理,使得對(duì)信息的管理更加及時(shí)、高效,提高了工作效率,具有一般新聞系統(tǒng)的功能,主要包括前臺(tái)新聞查看區(qū)和后臺(tái)管理區(qū),可為學(xué)校各部門發(fā)布新聞,為校園網(wǎng)站提供新聞發(fā)布與管理的服務(wù)。關(guān)鍵詞 asp.net ado.net 新聞管理 browser/serverabstract :asp.net is web application program developing platform of new generation, it is one that has

3、already compiled , development environment based on .net, it has offered and produced all essential services of application program of enterprise layer, produce because of .net framework, the whole frame can be used in any asp.net application program. can use any to operate the compatible language (

4、including visual basic.net , c# and jscript .net ) of storehouse (clr ) to establish application program with common language . this news system uses asp.net (c#) and ado.net technological development, has realized the dynamic management of websites news, make the control over information more promp

5、t , more high-efficient , has improved working efficiency. news this system have general news function of system, mainly including front desk news person who look over and back-stage management area, can release news for every department of the school , offer news briefing and management one service

6、 for campus website. keywords asp.net ado.net newsmanagement browser/server引言asp.net是微軟公司最新推出的一種統(tǒng)一web開發(fā)平臺(tái),與最新的數(shù)據(jù)訪問技術(shù)ado.net一起可構(gòu)建出強(qiáng)大、安全和可靠的企業(yè)級(jí)web應(yīng)用程序。asp.net的語法在很大程度上與asp兼容,同時(shí)它還提供一種新的編程模型和結(jié)構(gòu),用于生成更安全、可伸縮和穩(wěn)定的應(yīng)用程序。采取了asp.net技術(shù)的系統(tǒng)在性能上有了很大的改善,主要表現(xiàn)在以下幾方面: 由于asp頁面每次打開都必須經(jīng)過先編譯后解釋的過程,所以頁面在反復(fù)打開時(shí)速度沒有任何提升,而asp.n

7、et頁面只需要一次編譯后不需要重新編譯,直到該頁面被修改或web應(yīng)用程序重新啟動(dòng)。這使得在多次訪問時(shí)速度有了極大的提升;由于asp沒有提供任何輸出數(shù)據(jù)為內(nèi)容的元件,所以在使用asp撰寫數(shù)據(jù)庫頁面時(shí)只能借助ado的recordset對(duì)象逐筆讀取記錄,而asp.net通過ado.net提供的datagrid等數(shù)據(jù)庫元件可以直接和數(shù)據(jù)庫聯(lián)系;asp.net支持應(yīng)用程序的實(shí)時(shí)更新,管理員不必關(guān)掉網(wǎng)絡(luò)服務(wù)器或者甚至不用停止應(yīng)用程序的運(yùn)行就可以更新應(yīng)用文件。應(yīng)用程序文件永遠(yuǎn)不會(huì)被加鎖,因此甚至在程序運(yùn)行時(shí)文件就可以被覆蓋,當(dāng)文件更新后,系統(tǒng)會(huì)溫和地轉(zhuǎn)換到新的版本;asp.net采取codebehind(代

8、碼分離)技術(shù)方式編寫代碼使得代碼更易于編寫,結(jié)構(gòu)更清晰,降低了系統(tǒng)開發(fā)與維護(hù)的復(fù)雜度和費(fèi)用。由于本人自身水平有限文中不當(dāng)之處在所難免,望諸位老師批評(píng)、指正。目錄一緒論611 新聞發(fā)布系統(tǒng)概論6111 新聞發(fā)布系統(tǒng)6112 新聞發(fā)布系統(tǒng)的特點(diǎn)7113 新聞發(fā)布系統(tǒng)的分類712 課題研究背景現(xiàn)狀及其意義813 研究的目的、意義和范圍814 本章小結(jié)9二可行性研究921 可行性分析9211 技術(shù)可行性9212 經(jīng)濟(jì)可行性9213 總結(jié)1022 asp.net、ado.net和c#語言簡介1023 本章小結(jié)12三需求分析1231 系統(tǒng)開發(fā)環(huán)境1232 系統(tǒng)構(gòu)架12321 c/s介紹12322 b/s介

9、紹13323c/s和b/s的比較1333 系統(tǒng)流程圖1434 數(shù)據(jù)流圖1635 系統(tǒng)e-r圖1736 系統(tǒng)說明及功能簡介17四系統(tǒng)類設(shè)計(jì)1841 數(shù)據(jù)庫訪問層的類設(shè)計(jì)(數(shù)據(jù)庫助手類)1842 業(yè)務(wù)邏輯層的類設(shè)計(jì)2243 顯示層的設(shè)計(jì)27五系統(tǒng)模塊展示及實(shí)現(xiàn)3251 前臺(tái)模塊模塊展示3252 前臺(tái)模塊的詳細(xì)設(shè)計(jì)說明3453 后臺(tái)模塊展示3754 后臺(tái)模塊詳細(xì)設(shè)計(jì)39六系統(tǒng)測(cè)試及運(yùn)行結(jié)果416.1 系統(tǒng)功能測(cè)試416.1.1 系統(tǒng)測(cè)試方法416.1.2 系統(tǒng)測(cè)試過程416.2 系統(tǒng)測(cè)試運(yùn)行結(jié)果426.3 本章小結(jié)42七總結(jié)42八參考文獻(xiàn)42九致謝詞43一 緒論自從1946年世界上第一臺(tái)電子計(jì)算機(jī)誕

10、生,年代第一個(gè)計(jì)算機(jī)網(wǎng)絡(luò)arpanet實(shí)現(xiàn)互聯(lián);隨后在計(jì)算機(jī)技術(shù)與網(wǎng)絡(luò)技術(shù)發(fā)展的基礎(chǔ)上,根據(jù)人們信息交換的需要,產(chǎn)生了internet,從此標(biāo)志著人類進(jìn)入了電子信息化時(shí)代。九十年代后期計(jì)算機(jī)與internet的普及逐漸進(jìn)入了企業(yè)、機(jī)關(guān),學(xué)校和普通百姓家庭,實(shí)現(xiàn)了同外界信息同步交換,享受不出門就知天下事的方便生活。在線新聞憑借它的實(shí)時(shí)性和真實(shí)性擁有了大批的用戶,本篇論文就是介紹如果制作一個(gè)新聞發(fā)布系統(tǒng)。11 新聞發(fā)布系統(tǒng)概論111 新聞發(fā)布系統(tǒng)新聞發(fā)布系統(tǒng)(news release system or content management system)又叫做內(nèi)容管理系統(tǒng),是一個(gè)基于新聞和內(nèi)容管

11、理的全站管理系統(tǒng),新聞發(fā)布系統(tǒng)是基于b/s模式的webmis系統(tǒng),本系統(tǒng)可以將雜亂無章的信息(包括文字、圖片和影音)經(jīng)過組織,合理有序地呈現(xiàn)在大家面前。當(dāng)今社會(huì)是一個(gè)信息化的社會(huì),新聞作為信息的一部分有著信息量大,類別繁多,形式多樣的特點(diǎn),新聞發(fā)布系統(tǒng)的概念就此提出。新聞發(fā)布系統(tǒng)的提出使電視不再是唯一的新聞媒體,從此以后網(wǎng)絡(luò)也充當(dāng)了一個(gè)重要的新聞媒介的功能。簡單地說,新聞發(fā)布系統(tǒng)就是充當(dāng)一個(gè)網(wǎng)絡(luò)新聞媒介的功能,主要實(shí)現(xiàn)對(duì)新聞的分類、上傳、審核、發(fā)布,模擬了一般新聞媒介的新聞發(fā)布的過程,通過不同權(quán)限的賬號(hào)分別實(shí)現(xiàn)以上所說功能,當(dāng)然這些功能也可以是某一個(gè)賬號(hào)全部具有。隨著互連網(wǎng)的進(jìn)一步發(fā)展,網(wǎng)絡(luò)媒

12、體在人們心中的地位進(jìn)一步提高,新聞發(fā)布系統(tǒng)做為網(wǎng)絡(luò)媒體的核心系統(tǒng),其重要性是越來越重要:一方面,它提供一個(gè)新聞管理和發(fā)布的功能;另一方面,現(xiàn)在的新聞發(fā)布要求實(shí)現(xiàn)與普通的用戶實(shí)現(xiàn)交互,用戶可以很方便地參加一些調(diào)查和相關(guān)新聞的評(píng)論,這一點(diǎn)也是其他一些媒體現(xiàn)在無法做到的(電視、電臺(tái)等),同時(shí),internet發(fā)展到當(dāng)今,可以說,只要你上internet,你就會(huì)接觸到新聞發(fā)布系統(tǒng),新聞發(fā)布系統(tǒng)的用戶是相當(dāng)驚人的,其重要性是不容置疑的,當(dāng)然這也對(duì)新聞發(fā)布系統(tǒng)的開發(fā)提出了更高的要求。112 新聞發(fā)布系統(tǒng)的特點(diǎn)與一般的信息系統(tǒng)相比較,新聞發(fā)布系統(tǒng)具有以下特征:1) 是基于b/s模式下的web信息系統(tǒng),數(shù)據(jù)庫

13、邏輯相對(duì)簡單,但數(shù)據(jù)量一般比較龐大;2)用戶數(shù)量大,服務(wù)器壓力大,是系統(tǒng)設(shè)計(jì)中必須考慮的問題之一,而一般的信息系統(tǒng)相對(duì)壓力要少了很多;3)是一個(gè)開放式的系統(tǒng),前臺(tái)瀏覽無須驗(yàn)證。113 新聞發(fā)布系統(tǒng)的分類1) 前臺(tái)動(dòng)態(tài)顯示的新聞發(fā)布系統(tǒng)該類系統(tǒng)大約占60% 的分額,其主要特點(diǎn)是前臺(tái)采用編程語言動(dòng)態(tài)讀取數(shù)據(jù)庫的內(nèi)容,隨時(shí)更新,該類系統(tǒng)設(shè)計(jì)簡單,適合大多數(shù)中小企業(yè)建站需要,通用性不強(qiáng),一般需要量身定做,不適合大型新聞?wù)军c(diǎn),當(dāng)用戶過多時(shí),編程語言動(dòng)態(tài)讀取數(shù)據(jù)庫就勢(shì)必消耗大量的服務(wù)器資源,造成系統(tǒng)運(yùn)行緩慢,甚至崩潰,同時(shí)由于前臺(tái)新聞是動(dòng)態(tài)從數(shù)據(jù)庫中讀取,導(dǎo)致前端用戶直接接觸到數(shù)據(jù)庫,很容易造成一些不安全

14、的因素,例如:sql injection。2)前臺(tái)靜態(tài)顯示的新聞發(fā)布系統(tǒng)該類系統(tǒng)大約占有30%多的市場(chǎng)分額,其主要特點(diǎn)為:前臺(tái)新聞全部生成html靜態(tài)文件,前臺(tái)無須讀取數(shù)據(jù)庫,瀏覽器只需要直接下載html文件即可瀏覽新聞,瀏覽速度得到提高,同時(shí)也大大減輕了數(shù)據(jù)庫服務(wù)器的壓力,該系統(tǒng)后臺(tái)設(shè)計(jì)復(fù)雜需要處理復(fù)雜的模板標(biāo)簽和個(gè)模板之間的邏輯,一般采用三層模式實(shí)現(xiàn),該類系統(tǒng)靈活性大,可以通過模板自定義實(shí)現(xiàn)界面復(fù)雜的前臺(tái)頁面,一般不需要為某一個(gè)企業(yè)而定做,該系統(tǒng)具有良好的通用性,適合各類新聞?wù)军c(diǎn),同時(shí),系統(tǒng)把前端用戶和數(shù)據(jù)庫分割開來,系統(tǒng)的安全性得到大大的提高。3)基于文本的新聞發(fā)布系統(tǒng)該系統(tǒng)在市場(chǎng)上占有

15、很少的一部分,主要是把前面的數(shù)據(jù)庫換成了txt格式的文本文件,該系統(tǒng)主要缺點(diǎn)是文本文件是無序的,管理起來非常麻煩,而且安全性不高,很容易造成數(shù)據(jù)冗余,因此,目前還沒有見到該類系統(tǒng)的商業(yè)版本,一般都作為個(gè)人用戶使用。4)基于xml數(shù)據(jù)島的新聞發(fā)布系統(tǒng)該系統(tǒng)是新聞發(fā)布系統(tǒng)的一個(gè)發(fā)展趨勢(shì),它用xml數(shù)據(jù)島代替了數(shù)據(jù)庫,xml是一個(gè)有序的數(shù)據(jù)文件,比數(shù)據(jù)庫的讀取速度更快,但操作起來沒有數(shù)據(jù)庫這么方便,但是由于開發(fā)技術(shù)難度大,該類系統(tǒng)現(xiàn)在市場(chǎng)很少見到。12 課題研究背景現(xiàn)狀及其意義傳統(tǒng)的網(wǎng)站新聞管理方式有兩種:一種是靜態(tài)html頁面,更新信息時(shí)需要重新制作頁面然后上傳頁面并修改相應(yīng)鏈接,這種方式因?yàn)樾?/p>

16、太低已不多用;另一種是基于asp和腳本語言,將動(dòng)態(tài)網(wǎng)頁和數(shù)據(jù)庫結(jié)合,通過應(yīng)用程序來處理新聞,這是目前較為流行的做法。但是由于asp技術(shù)本身的局限性使得系統(tǒng)有一些不可克服的缺陷。asp.net不僅僅是下一版本的asp(active server pages,動(dòng)態(tài)服務(wù)器頁面),而且是建立動(dòng)態(tài)web應(yīng)用程序而重新打造的全新技術(shù),其主要特色包括: 語言的獨(dú)立性; 簡單的開發(fā)操作,分離程序代碼和網(wǎng)頁內(nèi)容; 提高了執(zhí)行效率; 簡化部署與組態(tài)的操作; 支持客戶端類型; 支持下一代的web服務(wù); 增進(jìn)適用性; 增進(jìn)延展性; 更多的支持工具; 更佳的安全機(jī)制; 會(huì)話(session)可以跨進(jìn)程、跨機(jī)器。由于as

17、p.net的眾多優(yōu)點(diǎn),技術(shù)發(fā)展和各種客觀實(shí)際的需要,該系統(tǒng)選用了asp.net來開發(fā)設(shè)計(jì),實(shí)現(xiàn)了對(duì)校園新聞的動(dòng)態(tài)管理操作,使得對(duì)新聞信息的發(fā)布與管理更加及時(shí)、高效,提高了工作效率。13 研究的目的、意義和范圍隨著internet的普及,越來越多的企業(yè)建立了自己的www網(wǎng)站,企業(yè)通過網(wǎng)站可以展示產(chǎn)品,發(fā)布最新動(dòng)態(tài)信息,與用戶進(jìn)行交流和溝通,與合作伙伴建立聯(lián)系,以及開展電子商務(wù)等。其中新聞管理系統(tǒng)是構(gòu)成企業(yè)網(wǎng)站的一個(gè)重要組成部分,它擔(dān)負(fù)著雙層作用:一方面可以用來動(dòng)態(tài)發(fā)布有關(guān)新產(chǎn)品或新開發(fā)項(xiàng)目;另一方面又可以及時(shí)向顧客公告企業(yè)經(jīng)營業(yè)績、技術(shù)與研發(fā)進(jìn)展、特別推薦或優(yōu)惠的工程項(xiàng)目、產(chǎn)品和服務(wù),從而吸引顧

18、客,擴(kuò)大顧客群。該系統(tǒng)使用asp.net(c#語言)和ado.net技術(shù)開發(fā), 實(shí)現(xiàn)了網(wǎng)站新聞的動(dòng)態(tài)管理,使得對(duì)信息的管理更加及時(shí)、高效,提高了工作效率。該新聞系統(tǒng)具有一般新聞系統(tǒng)的功能,主要包括前臺(tái)新聞查看區(qū)和后臺(tái)管理區(qū),可為學(xué)校各部門發(fā)布新聞,為校園網(wǎng)站提供新聞發(fā)布與管理的服務(wù)。該系統(tǒng)是基于b/s(browser/server,瀏覽器/客戶端)模式實(shí)現(xiàn),基于.net平臺(tái)架構(gòu)開發(fā)設(shè)計(jì),主要實(shí)現(xiàn)對(duì)校園新聞的發(fā)布與管理功能,對(duì)新聞內(nèi)容信息的瀏覽閱讀等。 隨著internet/intranet技術(shù)的興起,將原本在單機(jī)或本地局域網(wǎng)上運(yùn)行的數(shù)據(jù)庫系統(tǒng)移植到因特網(wǎng)中,即開發(fā)基于b/s模式的新一代mis(

19、management information system,管理信息系統(tǒng))系統(tǒng),正成為技術(shù)發(fā)展的趨勢(shì)。為了保證系統(tǒng)性能的高效性、可擴(kuò)展性,以及達(dá)到數(shù)據(jù)共享和網(wǎng)絡(luò)化管理的目的,本系統(tǒng)采用b/s體系結(jié)構(gòu)進(jìn)行設(shè)計(jì)開發(fā)。14 本章小結(jié)本章從新聞發(fā)布系統(tǒng)的現(xiàn)狀入手,系統(tǒng)的介紹了本課題的背景、研究意義,并分析新聞發(fā)布系統(tǒng)的發(fā)展情況和存在的問題,指出建立新聞發(fā)布系統(tǒng)具有重要的現(xiàn)實(shí)意義。二 可行性研究21 可行性分析211 技術(shù)可行性基于b/s模式的網(wǎng)上書店系統(tǒng),關(guān)鍵技術(shù)在于網(wǎng)站的現(xiàn)實(shí)和網(wǎng)站管理。從現(xiàn)成網(wǎng)上書店中取得相應(yīng)數(shù)據(jù),在瀏覽器中顯示,管理員通過后臺(tái)可以對(duì)數(shù)據(jù)進(jìn)行管理。采用目前比較流行的asp.net2

20、.0與sql server 2005 技術(shù)開發(fā),系統(tǒng)的部署、應(yīng)用維護(hù)更加方便。同時(shí),sql server 2005數(shù)據(jù)庫提供了數(shù)據(jù)庫的管理能力,因此,在技術(shù)方案是成熟的和可行的。在實(shí)現(xiàn)技術(shù)上,采用asp.net2.0與sql server 2005數(shù)據(jù)庫結(jié)合進(jìn)行系統(tǒng)的設(shè)計(jì),以iis5.1作為服務(wù)器,客戶端通過瀏覽器進(jìn)行訪問。此技術(shù)到目前應(yīng)用廣泛、穩(wěn)定,因此,在技術(shù)上是可行的。212 經(jīng)濟(jì)可行性1) 成本核算根據(jù)系統(tǒng)的規(guī)模及網(wǎng)站開發(fā)周期(約2個(gè)月),占用7天時(shí)間進(jìn)行需求分析,剩余一個(gè)半月左右的時(shí)間內(nèi)進(jìn)行語言學(xué)習(xí)、系統(tǒng)設(shè)計(jì)、程序編碼、系統(tǒng)測(cè)試、程序調(diào)試、網(wǎng)站部署以及網(wǎng)站美觀工作。在網(wǎng)站設(shè)計(jì)及調(diào)試階

21、段,資料查詢,用電費(fèi)用等費(fèi)用需要支出一千元左右。2) 效益分析用戶提供資金約五千元,設(shè)計(jì)本網(wǎng)站資金約一千元,對(duì)于網(wǎng)站運(yùn)行后進(jìn)行的改動(dòng),根據(jù)改動(dòng)規(guī)模額外提供資金。因此,從投資與收益的效益比上,可以獲得約四千元的利潤。213 總結(jié)根據(jù)上面的分析,在技術(shù)上不會(huì)存在問題,因此設(shè)計(jì)網(wǎng)站延期的可能性很小。在效益上投入兩個(gè)月的時(shí)間獲利四千元,比較可觀。同時(shí),在設(shè)計(jì)本網(wǎng)站期間,不斷的對(duì)asp.net2.0熟悉,這對(duì)于在今后的發(fā)展上,可以儲(chǔ)備網(wǎng)站開發(fā)的經(jīng)驗(yàn)和資源,因此認(rèn)為該網(wǎng)站可以開發(fā)。 22 asp.net、ado.net和c#語言簡介asp.net結(jié)構(gòu)是一個(gè)三層系統(tǒng):ui層、業(yè)務(wù)邏輯層和數(shù)據(jù)層,結(jié)構(gòu)模型如圖

22、2-1所示:圖2-1 asp.net的結(jié)構(gòu)模型 ui層負(fù)責(zé)與用戶交互,接收用戶的輸入并將服務(wù)器端傳來的數(shù)據(jù)呈現(xiàn)給戶; 業(yè)務(wù)邏輯層負(fù)責(zé)接收瀏覽器傳來的請(qǐng)求并將請(qǐng)求傳給數(shù)據(jù)層,同時(shí)將請(qǐng)求處理結(jié)果發(fā)給瀏覽器。它由web表單、xmlweb services和組件服務(wù)組成,其中web表單是asp.net應(yīng)用程序的核心所在,它是向客戶呈現(xiàn)數(shù)據(jù)和信息的基礎(chǔ),也是響應(yīng)和處理客戶與顯示的web表單交互生成的信息和數(shù)據(jù)的基礎(chǔ); 數(shù)據(jù)層是通過ado.net操縱數(shù)據(jù)為事務(wù)邏輯層提供數(shù)據(jù)服務(wù),如存儲(chǔ)數(shù)據(jù)操作結(jié)果、返回?cái)?shù)據(jù)檢索結(jié)果等。ado.net提供對(duì)microsoft sql server、oledb和xml公開的數(shù)

23、據(jù)源的一致性訪問,數(shù)據(jù)共享用戶應(yīng)用程序可以使用ado.net來連接到這些數(shù)據(jù)源,并檢索、操作和更新數(shù)據(jù)。ado.net 有兩個(gè)核心組件:dataset 和 .net framework 數(shù)據(jù)提供程序,后者是一組包括 connection、command、datareader 和 dataadapter 4個(gè)對(duì)象在內(nèi)的組件,其組件結(jié)構(gòu)如圖4-2-2所示:圖4-2-2 ado.net的組件結(jié)構(gòu)圖示dataset對(duì)象是 ado.net 的斷開式結(jié)構(gòu)的核心組件,實(shí)現(xiàn)獨(dú)立于任何數(shù)據(jù)源的數(shù)據(jù)訪問。connection 對(duì)象提供與數(shù)據(jù)源的連接,是操作數(shù)據(jù)庫的基礎(chǔ),表示應(yīng)用程序和數(shù)據(jù)源之間的惟一會(huì)話。comm

24、and 對(duì)象能夠訪問用于返回?cái)?shù)據(jù)、修改數(shù)據(jù)、運(yùn)行存儲(chǔ)過程以及發(fā)送或檢索參數(shù)信息的數(shù)據(jù)庫命令,實(shí)現(xiàn)對(duì)數(shù)據(jù)源的操作,如查詢、插入、修改和刪除等。datareader 對(duì)象從數(shù)據(jù)源中讀取只進(jìn)且只讀的數(shù)據(jù)流。dataadapter 對(duì)象是dataset 對(duì)象和數(shù)據(jù)源之間關(guān)聯(lián)的橋梁,用數(shù)據(jù)源填充dataset并解析更新。設(shè)計(jì) ado.net 組件的目的是為了從“數(shù)據(jù)操作”中分解出“數(shù)據(jù)訪問”。c#語言是.net中一種嶄新的語言,c#是由c和c+派生而來的一種“簡單、流行、面向?qū)ο?、類型安全”的程序設(shè)計(jì)語言,c#意在綜合visual basic的高效率和c+的強(qiáng)大功能。23 本章小結(jié)本章主要介紹了本網(wǎng)站設(shè)

25、計(jì)的技術(shù)可行性和經(jīng)濟(jì)可行性以及相關(guān)技術(shù)概述。三 需求分析31 系統(tǒng)開發(fā)環(huán)境1)網(wǎng)站開發(fā)環(huán)境網(wǎng)站開發(fā)環(huán)境:microsoft visual studio 2008 集成開發(fā)環(huán)境。網(wǎng)站開發(fā)語言:asp.net3.5+c#。網(wǎng)站后臺(tái)數(shù)據(jù)庫:sql server 2005。開發(fā)環(huán)境運(yùn)行平臺(tái):windows xp 。2)服務(wù)器端操作系統(tǒng):windows xp。web服務(wù)器:internet信息服務(wù)(iis)管理器。瀏覽器:ie 6.0。網(wǎng)站服務(wù)器運(yùn)行環(huán)境:microsoft.net framework sdk v2.0。 3)客戶端瀏覽器:internet explorer 6.0。分辨率:102476

26、8像素32 系統(tǒng)構(gòu)架321 c/s介紹c/s (client/server)結(jié)構(gòu)是軟件系統(tǒng)體系結(jié)構(gòu),通過它可以充分利用兩端硬件環(huán)境的優(yōu)勢(shì),將任務(wù)合理分配到client端和server端來實(shí)現(xiàn),降低了系統(tǒng)的通訊開銷。由于現(xiàn)在的軟件應(yīng)用系統(tǒng)正在向分布式的web應(yīng)用發(fā)展,web和client/server 應(yīng)用都可以進(jìn)行同樣的業(yè)務(wù)處理,應(yīng)用不同的模塊共享邏輯組件;因此,內(nèi)部的和外部的用戶都可以訪問新的和現(xiàn)有的應(yīng)用系統(tǒng),通過現(xiàn)有應(yīng)用系統(tǒng)中的邏輯可以擴(kuò)展出新的應(yīng)用系統(tǒng)。這也就是目前應(yīng)用系統(tǒng)的發(fā)展方向。322 b/s介紹b/s(browser/server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著interne

27、t技術(shù)的興起,對(duì)c/s結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過www瀏覽器來實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(browser)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(server)實(shí)現(xiàn)。這樣就大大簡化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)的成本和工作量,降低了用戶的總體成本(tco)。以目前的技術(shù)看,局域網(wǎng)建立b/s結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,并通過internet/intranet模式下數(shù)據(jù)庫應(yīng)用,相對(duì)易于把握、成本也是較低的。323c/s和b/s的比較l c/s的主要優(yōu)缺點(diǎn):1) 應(yīng)用服務(wù)器運(yùn)行數(shù)據(jù)負(fù)荷較輕。最簡單的c/s體系結(jié)構(gòu)的數(shù)據(jù)庫應(yīng)用由兩部分組成,即客戶應(yīng)用程序和數(shù)據(jù)庫服務(wù)器程序。

28、二者可分別稱為前臺(tái)程序與后臺(tái)程序。運(yùn)行數(shù)據(jù)庫服務(wù)器程序的機(jī)器,也稱為應(yīng)用服務(wù)器。一旦服務(wù)器程序被啟動(dòng),就隨時(shí)等待響應(yīng)客戶程序發(fā)來的請(qǐng)求;客戶應(yīng)用程序運(yùn)行在用戶自己的電腦上,對(duì)應(yīng)于數(shù)據(jù)庫服務(wù)器,可稱為客戶電腦,當(dāng)需要對(duì)數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行任何操作時(shí),客戶程序就自動(dòng)地尋找服務(wù)器程序,并向其發(fā)出請(qǐng)求,服務(wù)器程序根據(jù)預(yù)定的規(guī)則做出應(yīng)答,送回結(jié)果,應(yīng)用服務(wù)器運(yùn)行數(shù)據(jù)負(fù)荷較輕。2) 數(shù)據(jù)的儲(chǔ)存管理功能較為透明。在數(shù)據(jù)庫應(yīng)用中,數(shù)據(jù)的儲(chǔ)存管理功能,是由服務(wù)器程序和客戶應(yīng)用程序分別獨(dú)立進(jìn)行的,前臺(tái)應(yīng)用可以違反的規(guī)則,并且通常把那些不同的運(yùn)行數(shù)據(jù),在服務(wù)器程序中不集中實(shí)現(xiàn),例如訪問者的權(quán)限,編號(hào)可以重復(fù)、必須有客

29、戶才能建立定單這樣的規(guī)則。所有這些,對(duì)于工作在前臺(tái)程序上的最終用戶,是“透明”的,他們無須過問背后的過程,就可以完成自己的一切工作。在客戶服務(wù)器架構(gòu)的應(yīng)用中,前臺(tái)程序不是非?!笆菪 ?,麻煩的事情都交給了服務(wù)器和網(wǎng)絡(luò)。在c/s體系的下,數(shù)據(jù)庫不能真正成為公共、專業(yè)化的倉庫,它受到獨(dú)立的專門管理。3) c/s架構(gòu)的劣勢(shì)是高昂的維護(hù)成本且投資大。首先,采用c/s架構(gòu),要選擇適當(dāng)?shù)臄?shù)據(jù)庫平臺(tái)來實(shí)現(xiàn)數(shù)據(jù)庫數(shù)據(jù)的真正“統(tǒng)一”,使分布于兩地的數(shù)據(jù)同步完全交由數(shù)據(jù)庫系統(tǒng)去管理,但邏輯上兩地的操作者要直接訪問同一個(gè)數(shù)據(jù)庫才能有效實(shí)現(xiàn),有這樣一些問題,如果需要建立“實(shí)時(shí)”的數(shù)據(jù)同步,就必須在兩地間建立實(shí)時(shí)的通訊連

30、接,保持兩地的數(shù)據(jù)庫服務(wù)器在線運(yùn)行,網(wǎng)絡(luò)管理工作人員既要對(duì)服務(wù)器維護(hù)管理,又要對(duì)客戶端維護(hù)和管理,這需要高昂的投資和復(fù)雜的技術(shù)支持,維護(hù)成本很高,維護(hù)任務(wù)量大。l b/s的主要優(yōu)缺點(diǎn):1) 維護(hù)和升級(jí)方式簡單。目前,軟件系統(tǒng)的改進(jìn)和升級(jí)越來越頻繁,b/s架構(gòu)的產(chǎn)品明顯體現(xiàn)著更為方便的特性。無論用戶的規(guī)模有多大,有多少分支機(jī)構(gòu)都不會(huì)增加任何維護(hù)升級(jí)的工作量,所有的操作只需要針對(duì)服務(wù)器進(jìn)行。所以客戶機(jī)越來越“瘦”,而服務(wù)器越來越“胖”是將來信息化發(fā)展的主流方向。今后,軟件升級(jí)和維護(hù)會(huì)越來越容易,而使用起來會(huì)越來越簡單,這對(duì)用戶人力、物力、時(shí)間、費(fèi)用的節(jié)省是顯而易見的,驚人的。因此,維護(hù)和升級(jí)革命的

31、方式是“瘦”客戶機(jī),“胖”服務(wù)器。2) 成本降低,選擇更多。大家都知道windows在桌面電腦上幾乎一統(tǒng)天下,瀏覽器成為了標(biāo)準(zhǔn)配置,但在服務(wù)器操作系統(tǒng)上windows并不是處于絕對(duì)的統(tǒng)治地位。 現(xiàn)在的趨勢(shì)是凡使用b/s架構(gòu)的應(yīng)用管理軟件,只需安裝在linux服務(wù)器上即可,而且安全性高。所以服務(wù)器操作系統(tǒng)的選擇是很多的,不管選用那種操作系統(tǒng)都可以讓大部分人使用windows作為桌面操作系統(tǒng)電腦不受影響,這就使的最流行免費(fèi)的linux操作系統(tǒng)快速發(fā)展起來,linux除了操作系統(tǒng)是免費(fèi)的以外,連數(shù)據(jù)庫也是免費(fèi)的,這種選擇非常盛行。3) 應(yīng)用服務(wù)器運(yùn)行數(shù)據(jù)負(fù)荷較重。由于b/s架構(gòu)管理軟件只安裝在服務(wù)器

32、端(server)上,網(wǎng)絡(luò)管理人員只需要管理服務(wù)器就行了,用戶界面主要事務(wù)邏輯在服務(wù)器(server)端完全通過www瀏覽器實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(browser)實(shí)現(xiàn),所有的客戶端只有瀏覽器,網(wǎng)絡(luò)管理人員只需要做硬件維護(hù)。但是,應(yīng)用服務(wù)器運(yùn)行數(shù)據(jù)負(fù)荷較重,一旦發(fā)生服務(wù)器“崩潰”等問題,后果不堪設(shè)想。33 系統(tǒng)流程圖系統(tǒng)流程圖是描述物理系統(tǒng)的工具,可以通過系統(tǒng)流程圖來了解要開發(fā)的系統(tǒng)的大概處理流程、范圍和功能。如圖3-1所示為游客進(jìn)入系統(tǒng)的流程圖:圖 3-1如圖3-2所示為管理員進(jìn)入系統(tǒng)的流程:圖 3-234 數(shù)據(jù)流圖數(shù)據(jù)流圖(簡稱dfd),是結(jié)構(gòu)化分析方法中用于系統(tǒng)邏輯模型的一種工具,

33、它以圖形的方式描繪數(shù)據(jù)在系統(tǒng)中流動(dòng)和處理的過程。游客進(jìn)入系統(tǒng)的數(shù)據(jù)流向:如圖3-3圖 3-3管理員操作系統(tǒng)的數(shù)據(jù)流向:如圖3-4圖 3-4系統(tǒng)總的數(shù)據(jù)流向:如圖3-5圖3-535 系統(tǒng)e-r圖36 系統(tǒng)說明及功能簡介前臺(tái)顯示新聞部分 用戶登錄區(qū) 顯示最熱門的前幾條新聞 顯示最新的前幾條新聞 搜索新聞功能 顯示所有新聞分類(即部門) 按分類/部門顯示其下的所有新聞 新聞詳細(xì)信息瀏覽閱讀 圖片新聞(自動(dòng)生成縮略圖)以滾動(dòng)形式在首頁顯示且只顯示前幾條 后臺(tái)管理部分 登錄驗(yàn)證 根據(jù)權(quán)限顯示相應(yīng)的管理目錄 添加、修改和刪除新聞 管理發(fā)布新聞 管理審核新聞 分類管理四 系統(tǒng)類設(shè)計(jì)通過前面的學(xué)習(xí)與研究,系統(tǒng)

34、的框架結(jié)構(gòu)以及功能模塊都已經(jīng)成形。這一章將介紹這個(gè)系統(tǒng)中一些類的設(shè)計(jì)及作用。41 數(shù)據(jù)庫訪問層的類設(shè)計(jì)(數(shù)據(jù)庫助手類)該類主要負(fù)責(zé)數(shù)據(jù)庫的操作,包括了與數(shù)據(jù)庫的連接,對(duì)數(shù)據(jù)庫進(jìn)行插、查、刪、改等操作。具體代碼實(shí)現(xiàn)如下:/* * 創(chuàng)建人:汪州 * 創(chuàng)建時(shí)間:2010-3-10 * 說明:數(shù)據(jù)庫助手類 */using system;using system.collections.generic;using system.linq;using system.text;using system.data;using system.data.sqlclient;using system.configu

35、ration;namespace dal public class sqlhelper private sqlconnection conn = null; private sqlcommand cmd = null; private sqldatareader sdr = null; public sqlhelper() string connstr = configurationmanager.connectionstringsconnstr.connectionstring; conn = new sqlconnection(connstr); private sqlconnection

36、 getconn() if (conn.state = connectionstate.closed) conn.open(); return conn; / / 執(zhí)行不帶參數(shù)的增刪改sql語句或存儲(chǔ)過程 / / 增刪改sql語句或存儲(chǔ)過程 / 命令類型 / public int executenonquery(string cmdtext, commandtype ct) int res; try cmd = new sqlcommand(cmdtext, getconn(); cmd.commandtype = ct; res = cmd.executenonquery(); catch

37、(exception ex) throw ex; finally if (conn.state = connectionstate.open) conn.close(); return res; / / 執(zhí)行帶參數(shù)的增刪改sql語句或存儲(chǔ)過程 / / 增刪改sql語句或存儲(chǔ)過程 / 命令類型 / public int executenonquery(string cmdtext, sqlparameter paras, commandtype ct) int res; using (cmd = new sqlcommand(cmdtext, getconn() cmd.commandtype

38、= ct; cmd.parameters.addrange(paras); res = cmd.executenonquery(); return res; / / 執(zhí)行查詢sql語句或存儲(chǔ)過程 / / 查詢sql語句或存儲(chǔ)過程 / 命令類型 / public datatable executequery(string cmdtext, commandtype ct) datatable dt = new datatable(); cmd = new sqlcommand(cmdtext, getconn(); cmd.commandtype = ct; using (sdr = cmd.ex

39、ecutereader(commandbehavior.closeconnection) dt.load(sdr); return dt; / / 執(zhí)行帶參數(shù)的查詢sql語句或存儲(chǔ)過程 / / 查詢sql語句或存儲(chǔ)過程 / 參數(shù)集合 / 命令類型 / public datatable executequery(string cmdtext, sqlparameter paras, commandtype ct) datatable dt = new datatable(); cmd = new sqlcommand(cmdtext, getconn(); cmd.commandtype = c

40、t; cmd.parameters.addrange(paras); using (sdr = cmd.executereader(commandbehavior.closeconnection) dt.load(sdr); return dt; 其中這個(gè)數(shù)據(jù)庫助手類是和數(shù)據(jù)庫交互的最低層的類,依賴與他的類很多,在數(shù)據(jù)庫訪問層的主要有以下這幾個(gè)類:categorydao.cs(對(duì)目錄進(jìn)行操作的類)、commentdao.cs(對(duì)評(píng)論進(jìn)行操作的類)、newsdao.cs(對(duì)新聞表進(jìn)行操作的類)。注:以上這三個(gè)類的代碼省略,有需要請(qǐng)參看系統(tǒng)源代碼。42 業(yè)務(wù)邏輯層的類設(shè)計(jì)業(yè)務(wù)邏輯層,指的是把所有對(duì)

41、于用戶對(duì)與系統(tǒng)的請(qǐng)求與操作都集中與這一層來處理??偟膩碚f,它包括了一下幾個(gè)類的設(shè)計(jì):categorymanager.cs(目錄管理類)、commentmanager.cs(評(píng)論管理類)、loginmanager.cs(驗(yàn)證登錄管理類)、newsmanager.cs(新聞管理類)。以下為loginmanager.cs的部分源代碼:/* * 創(chuàng)建人:汪州 * 創(chuàng)建時(shí)間:2010-3-12 * 說明:登陸的業(yè)務(wù)邏輯類 */using system;using system.collections.generic;using system.linq;using system.text;namespac

42、e bll public class loginmanager / 用戶登陸是否成功 public bool valogin(string name, string pwd) bool flag = false; if (name = ivywi & pwd = ivywi) flag = true; return flag; 這個(gè)類用來驗(yàn)證用戶登錄的業(yè)務(wù)邏輯,用這個(gè)類來處理當(dāng)用戶登錄系統(tǒng)時(shí),顯示層發(fā)送過來的數(shù)據(jù)。以下是newsmanager.cs類的部分源代碼:/* * 創(chuàng)建人:汪州 * 創(chuàng)建時(shí)間:2010-3-12 */using system;using system.collections.generic;using system.linq;using system.text;using dal;using model;using system.data;using system.data.sqlclient;names

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論