版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 基于Web的畢業(yè)設(shè)計管理系統(tǒng)的設(shè)計與實現(xiàn)</p><p> 摘 要:本系統(tǒng)是針對現(xiàn)代高校計算機(jī)技術(shù)的發(fā)展,為了應(yīng)對以往畢業(yè)生畢業(yè)設(shè)計中遇到的工作效率低,交互性差等問題而采用軟件工程的設(shè)計思想設(shè)計的。本文的基礎(chǔ)就是利用ASP.net技術(shù)與Web數(shù)據(jù)庫的結(jié)合,開發(fā)出的一個基于Web技術(shù)的B/S結(jié)構(gòu)的畢業(yè)設(shè)計管理系統(tǒng)。</p><p> 首先,本文探討了數(shù)據(jù)庫運行的體系
2、結(jié)構(gòu),介紹了瀏覽器/服務(wù)器模式的工作方式及特點;比較了主機(jī)/終端、客戶機(jī)/服務(wù)器和瀏覽器/服務(wù)器等三種模式各自的優(yōu)缺點。比較結(jié)果表明,瀏覽器/服務(wù)器模式繼承了客戶機(jī)/服務(wù)器模式的優(yōu)點并克服了它的缺點,不受操作系統(tǒng)和硬件的制約,而且能防止“胖客戶機(jī)”現(xiàn)象的發(fā)生,比較容易實現(xiàn)不同網(wǎng)絡(luò)間的連接。瀏覽器/服務(wù)器模式是目前廣泛使用的主體結(jié)構(gòu)。因此,我們開發(fā)的本系統(tǒng)也將采用了瀏覽器/服務(wù)器模式。在此基礎(chǔ)上,本文還探討了實現(xiàn)Web數(shù)據(jù)庫的不同方法。本
3、文重點還討論了如何利用ASP.net技術(shù)和ADO.net對象來實現(xiàn)對數(shù)據(jù)庫的訪問方法,給出了設(shè)計細(xì)節(jié)和具體步驟及其方法。</p><p> 本次設(shè)計是應(yīng)用ASP.NET技術(shù)實現(xiàn)網(wǎng)絡(luò)環(huán)境下的畢業(yè)生畢業(yè)設(shè)計管理。利用Microsoft Visual Studio.NET工具結(jié)合使用SQL Server數(shù)據(jù)庫,ASP.NET、C#、ADO.NET等技術(shù)的工作原理及特點,并以此為理論技術(shù)依據(jù)闡述了基于Web的畢業(yè)設(shè)計管
4、理系統(tǒng)的結(jié)構(gòu)設(shè)計和具體的實現(xiàn)過程。</p><p> 關(guān)鍵詞:B/S結(jié)構(gòu),C/S結(jié)構(gòu),Web數(shù)據(jù)庫,三層式結(jié)構(gòu),畢業(yè)設(shè)計管理系統(tǒng),Asp.net</p><p> The Design and Realization of Graduation Project Management System Based on Web</p><p> Abstract :
5、This system is designed in allusion to the development of modern computer technology in universities and colleges. It adopts the design ideology of software engineering, in order to answer the problems that had been face
6、d by the graduates in their graduation projects, such as low work efficiency, and poor interaction. The foundation of this text was combining the skill of ASP.net with Web Database, and exploiting a management system bas
7、ed on the skill of Web and the structure of B/S.</p><p> Firstly, this text discusses the system and structure run by database, introduces the working and characteristic of the B/S pattern, and also compare
8、s with three kind of patterns respective advantage and disadvantage among Mainframe/Terminal,Client/Server and Browser/Server. The result indicates that the mode of B/S inherits the merit of C/S, and conquers its shortco
9、ming. This mode is not conditioned by OS and hardware, and also can prevent "the fat client" happening, even it can easily connect </p><p> This design applies ASP.NET technology to solve practice
10、 of graduation project management in the network environment. Using the tool of Microsoft Visual Studio.NET and combining with SQL Server Database, the working elements of ASP.NET, C#, ADO.NET, etc. It takes this for the
11、 foundation of academic technique, and expatiates the structural design and the detailed process of carrying out the graduation project management based on Web.</p><p> Keyword: B/S,C/S,Web Database,Three L
12、ayers Structure,GPMS,ASP.net </p><p><b> 目 錄</b></p><p> 第一章 緒 論- 1 -</p><p> 1.1 系統(tǒng)開發(fā)背景及現(xiàn)狀- 1 -</p><p> 1.2 系統(tǒng)開發(fā)的目的- 1 -</p><p> 1.3 系
13、統(tǒng)開發(fā)關(guān)鍵技術(shù)與開發(fā)環(huán)境- 1 -</p><p> 1.3.1 .Net技術(shù)簡介- 1 -</p><p> 1.3.2 Microsoft SQL Server技術(shù)的簡介- 2 -</p><p> 1.3.3 ASP.NET的優(yōu)勢- 2 -</p><p> 1.3.4 系統(tǒng)運行軟件平臺- 3 -</p>
14、<p> 1.4 全文體系- 3 -</p><p> 第二章 基于Web的數(shù)據(jù)庫技術(shù)分析- 4 -</p><p> 2.1 數(shù)據(jù)庫應(yīng)用系統(tǒng)的層次體系- 4 -</p><p> 2.1.1 終端/主機(jī)體系結(jié)構(gòu)- 4 -</p><p> 2.1.2 客戶機(jī)/服務(wù)器體系結(jié)構(gòu)- 4 -</p>&
15、lt;p> 2.1.3 瀏覽器/服務(wù)器結(jié)構(gòu)- 6 -</p><p> 2.1.4 C/S結(jié)構(gòu)與B/S結(jié)構(gòu)的比較- 7 -</p><p> 2.2 Web數(shù)據(jù)庫管理系統(tǒng)介紹- 8 -</p><p> 2.2.1 Web數(shù)據(jù)庫管理系統(tǒng)的工作原理- 8 -</p><p> 2.2.2 利用WWW訪問數(shù)據(jù)庫的優(yōu)點-
16、8 -</p><p> 2.2.3 訪問Web數(shù)據(jù)庫的不同方法- 9 -</p><p> 2.2.4 ASP.net與以上開發(fā)Web數(shù)據(jù)庫方式相比的優(yōu)勢- 10 -</p><p> 2.3 本章小結(jié)- 10 -</p><p> 第三章 系統(tǒng)分析與設(shè)計- 11 -</p><p> 3.1 系統(tǒng)
17、的功能需求- 11 -</p><p> 3.2 系統(tǒng)介紹- 11 -</p><p> 3.2.1 總體框架- 11 -</p><p> 3.2.2 系統(tǒng)功能特點- 12 -</p><p> 3.3 系統(tǒng)設(shè)計- 12 -</p><p> 3.3.1 系統(tǒng)的開發(fā)原理- 12 -</p&
18、gt;<p> 3.3.2 系統(tǒng)的功能設(shè)計- 13 -</p><p> 3.3.3 系統(tǒng)的總體設(shè)計- 14 -</p><p> 3.4 系統(tǒng)的詳細(xì)設(shè)計- 15 -</p><p> 3.5 本章小結(jié)- 15 -</p><p> 第四章 系統(tǒng)功能的實現(xiàn)- 16 -</p><p>
19、 4.1 系統(tǒng)結(jié)構(gòu)和流程圖- 16 -</p><p> 4.1.1 學(xué)生模塊的結(jié)構(gòu)- 16 -</p><p> 4.1.2 教師模塊的結(jié)構(gòu)- 16 -</p><p> 4.1.3 管理員模塊的結(jié)構(gòu)- 17 -</p><p> 4.2 數(shù)據(jù)庫的設(shè)計和構(gòu)建- 18 -</p><p> 4.3
20、 與數(shù)據(jù)庫的連接- 21 -</p><p> 4.4 主要功能分析與實現(xiàn)- 23 -</p><p> 4.4.1 用戶登陸功能的實現(xiàn)- 23 -</p><p> 4.4.2 文件上傳功能代碼- 24 -</p><p> 4.4.3 數(shù)據(jù)庫備份的實現(xiàn)- 24 -</p><p> 4.4.4
21、頁面顯示及操作的實現(xiàn)- 25 -</p><p> 4.5 安全控制技術(shù)- 25 -</p><p> 4.6 本章小結(jié)- 26 -</p><p> 第五章 結(jié)束語- 27 -</p><p> 參考文獻(xiàn)- 28 -</p><p> 致 謝- 29 -</p><p>
22、 附 錄- 30 -</p><p><b> 第一章 緒 論</b></p><p> 1.1 系統(tǒng)開發(fā)背景及現(xiàn)狀</p><p> 隨著計算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展,給信息時代的人們帶來了很大的方便。如今在Internet上,你隨處都可以看到很多的各類信息管理系統(tǒng),如企業(yè)信息管理系統(tǒng),電子商務(wù)系統(tǒng),學(xué)校教務(wù)管理系統(tǒng)等各類信息管理系統(tǒng)的普及
23、。而針對本科畢業(yè)設(shè)計的選題等相關(guān)事項,涉及到導(dǎo)師給出課題或?qū)W生自選課題,以及在各個階段需要上交或是提交相關(guān)的文檔資料等問題,目前主要還是由人為來處理操作,需要花費一定人力,這給整個工作帶來了很多不便,而且容易出錯。因此就需要一個對此流程進(jìn)行管理的電子系統(tǒng),使得此過程更加方便,更加透明,更加高效,以節(jié)省更多的人力和不必要的工作。</p><p> 而目前的此類系統(tǒng)或多或少的存在以下的問題:</p>
24、<p> 1、不清楚建立網(wǎng)站的目的或沒有根據(jù)自己的目的詳細(xì)策劃網(wǎng)站的功能,只適應(yīng)一時之需;結(jié)果頁面的設(shè)計,包括系統(tǒng)內(nèi)的鏈接和功能未能真正提供方便;</p><p> 2、缺少一個針對有效管理本科畢業(yè)設(shè)計(論文)工作的基于Web技術(shù)的B/S的管理系統(tǒng),所以很多的管理系統(tǒng)遠(yuǎn)遠(yuǎn)達(dá)不到標(biāo)準(zhǔn),沒能很好地發(fā)揮管理系統(tǒng)應(yīng)有的效果;</p><p> 3、現(xiàn)實還沒有一個適合我校關(guān)于畢業(yè)設(shè)計
25、管理工作的管理系統(tǒng),或是直接針對我校的畢業(yè)設(shè)計管理工作而編寫的管理系統(tǒng)。</p><p> 通過對畢業(yè)設(shè)計管理工作的初步了解,從系統(tǒng)結(jié)構(gòu)的組織,功能的實現(xiàn),技術(shù)的要求以及可行性等多方面進(jìn)行考慮,認(rèn)為本課題是一個適應(yīng)現(xiàn)今畢業(yè)設(shè)計管理工作需求的計算機(jī)信息管理系統(tǒng),具有一定的實際開發(fā)價值和使用價值。</p><p> 1.2 系統(tǒng)開發(fā)的目的</p><p> 隨著計
26、算機(jī)信息技術(shù)、網(wǎng)絡(luò)通訊等高新技術(shù)的發(fā)展,對高校畢業(yè)設(shè)計管理提出了更高的要求。這樣不僅可以使教師從煩瑣的事務(wù)中解脫出來,而且還能提供面向?qū)W生的快捷、靈活、方便的智能服務(wù)。</p><p> 本課題旨在使目前校園內(nèi)畢業(yè)設(shè)計管理信息網(wǎng)絡(luò)化,解決已往信息傳遞不方便、不快捷等問題,如假期學(xué)生因不在校而無法上交文檔,學(xué)院或?qū)煘榘才殴ぷ鞫仨毻ㄖ礁鱾€學(xué)生等繁瑣的操作,通過本系統(tǒng)可實現(xiàn)管理的網(wǎng)絡(luò)化,方便教師和學(xué)生,提高工作
27、效率和效果,節(jié)省人力資源等,提高高校的管理水平,有利于推動高校管理的“無紙化辦公”進(jìn)程。</p><p> 1.3 系統(tǒng)開發(fā)關(guān)鍵技術(shù)與開發(fā)環(huán)境</p><p> 1.3.1 .Net技術(shù)簡介[1]</p><p> .Net首先是一個平臺,它定義了一種公用語言子集(Common Language Subset,CLS),這是一種為符合其規(guī)范的語言與類庫之間提供
28、無縫集成的混合語[2]。.Net統(tǒng)一了編程類庫,提供了對下一代網(wǎng)絡(luò)通訊標(biāo)準(zhǔn),可擴(kuò)展標(biāo)記語言(Extensible Markup Language,XML)的完全支持,使應(yīng)用程序的開發(fā)變得更容易,更簡單。Microsoft.Net計劃還將實現(xiàn)人機(jī)交互方面的革命,微軟將在其軟件中添加手寫和語音識別的功能,讓人們能夠與計算機(jī)進(jìn)行更好的交流,并在此基礎(chǔ)上繼續(xù)擴(kuò)展功能,增加對各種用戶終端的支持能力。最為重要的是.Net將改變因特網(wǎng)的行為方式:軟件
29、將變?yōu)榉?wù)。與Microsoft的其他產(chǎn)品一樣,.Net與Windows平臺緊密集成,并且與其他微軟產(chǎn)品相比它更進(jìn)一步:由于其運行庫已經(jīng)與操作系統(tǒng)融合在了一起,從廣義上把它稱為一個運行庫也不為過。</p><p> .Net框架是.Net平臺的基礎(chǔ)架構(gòu)。其強(qiáng)大功能來自于公共語言運行時(Common Language Runtime,CLR)環(huán)境和類庫。CLR和類庫(包括:Windows Forms,ADO.Ne
30、t和ASP.Net)緊密結(jié)合在一起,提供了不同系統(tǒng)之間交叉與綜合的解決方案和服務(wù)。.Net框架創(chuàng)造了一個完全可操控的、安全的和特性豐富的應(yīng)用執(zhí)行環(huán)境。這不但使得應(yīng)用程序的開發(fā)與發(fā)布更加簡單,并且成就了眾多種類語言間的無縫集成。</p><p> .Net的核心組件包括:[1]</p><p> ● 一組用于創(chuàng)建互聯(lián)網(wǎng)操作系統(tǒng)的構(gòu)件塊,其中包括Passport.Net(用于用戶認(rèn)證)以及
31、用于文件存儲的服務(wù)、用戶首選項管理、日歷管理以及眾多的其他任務(wù)。</p><p> ● 構(gòu)建和管理新一代服務(wù)的基本結(jié)構(gòu)和工具,包括Visual Studio.Net、.Net企業(yè)服務(wù)器、.Net Framework和Windows.Net。</p><p> ● 能夠啟用新型智能互聯(lián)網(wǎng)設(shè)備的.Net設(shè)備軟件。</p><p> ● .Net用戶體驗。</
32、p><p><b> .Net結(jié)構(gòu)包括:</b></p><p> ● 虛擬對象系統(tǒng)(Visual Object System ,VOS)類型系統(tǒng)</p><p><b> ● 元數(shù)據(jù)</b></p><p> ● 公用語言規(guī)范(Common Language Specification,CLS
33、)</p><p> ● 虛擬執(zhí)行系統(tǒng)(Visual Execution System,VES)</p><p> 簡而言之,.Net是一種面向網(wǎng)絡(luò)、支持各種用戶終端的開發(fā)平臺環(huán)境。微軟的宏偉目標(biāo)是讓.Net徹底改變軟件的開發(fā)方式、發(fā)行方式、使用方式等等,并且不止是針對微軟一家,而是面向所有開發(fā)商與運營商!.Net的核心內(nèi)容之一就是搭建第三代因特網(wǎng)平臺,這個網(wǎng)絡(luò)平臺將解決網(wǎng)站之間的協(xié)同
34、合作問題,從而最大限度地獲取信息。在.Net平臺上,不同網(wǎng)站之間通過相關(guān)的協(xié)定聯(lián)系在一起,網(wǎng)站之間形成自動交流,協(xié)同工作,提供最全面的服務(wù)。</p><p> 1.3.2 Microsoft SQL Server技術(shù)的簡介[3]</p><p> Microsoft SQL server幫助初級數(shù)據(jù)庫用戶及資深程序員建立與Web及企業(yè)數(shù)據(jù)源輕松實現(xiàn)集成的強(qiáng)大自定義解決方案。檢索銷售記錄
35、,跟蹤存貨信息,Microsoft SQL server將時刻準(zhǔn)備幫助您實現(xiàn)智能化工作方式。</p><p> Microsoft SQL server大大簡化了建立功能強(qiáng)大的數(shù)據(jù)庫解決方案以及訪問并分析重要數(shù)據(jù)的任務(wù)。改變原有的數(shù)據(jù)分析方式。輕松創(chuàng)建并發(fā)布交互式電子表格;借助Microsoft PivotTable®及Microsoft PivotChart®,在無需離開Microsoft
36、 SQL server的前提下,以多種不同方式動態(tài)查看現(xiàn)有的重要信息。</p><p> 現(xiàn)在,為實現(xiàn)最大工作效率,當(dāng)創(chuàng)建窗體、報表、數(shù)據(jù)訪問頁、宏或模塊時,您可以撤消或恢復(fù)多個操作。使用您所了解的工具在Web上共享數(shù)據(jù)。將您的窗體或報表保存為數(shù)據(jù)訪問頁,以便使用戶能夠在他們的瀏覽器中即時查看與編輯數(shù)據(jù)。在Web站點上訪問Office工具,以便下載幫助您提高工作速度的模板、工具、提示及更新。利用功能強(qiáng)大的新型發(fā)
37、布工具。這些工具允許您通過諸如擴(kuò)展標(biāo)記語言(XML)這樣的Internet標(biāo)準(zhǔn)導(dǎo)出數(shù)據(jù)及相關(guān)格式,以供在Web上進(jìn)行顯示。</p><p> 1.3.3 ASP.NET的優(yōu)勢</p><p> 傳統(tǒng)的網(wǎng)站管理方式有兩種,一是靜態(tài)HTML頁面,更新信息時需要重新制作頁面然后上傳頁面并修改相應(yīng)鏈接,這種方式因為效率太低已不多用。二是基于ASP和腳本語言,將動態(tài)網(wǎng)頁和數(shù)據(jù)庫結(jié)合,通過應(yīng)用程序
38、來處理新聞,這是目前較為流行的做法。但是由于ASP本身的局限性使得系統(tǒng)有一些不可克服的缺陷,而采取了ASP.NET技術(shù)的系統(tǒng)性能上有了很大的改善,其主要表現(xiàn)在以下幾方面:</p><p> 1、由于ASP頁面每次打開都必須經(jīng)過先編譯后解釋的過程,所以頁面在反復(fù)打開時速度沒有任何提升,而ASP.NET頁面只需要一次編譯后不需要重新編譯,直到該頁面被修改或Web應(yīng)用程序重新啟動。這使得在多次訪問時速度有了極大的提升
39、。</p><p> 2、由于ASP沒有提供任何輸出數(shù)據(jù)為內(nèi)容的元件,所以在使用ASP撰寫數(shù)據(jù)庫頁面時只能借助ADO的RecordSet對象逐筆讀取記錄,而ASP.NET通過ADO.NET提供的DataGrid等數(shù)據(jù)庫元件可以直接和數(shù)據(jù)庫聯(lián)系。</p><p> 3、ASP.NET支持應(yīng)用程序的實時更新。管理員不必關(guān)掉網(wǎng)絡(luò)服務(wù)器或者甚至不用停止應(yīng)用程序的運行就可以更新應(yīng)用文件。應(yīng)用程序
40、文件永遠(yuǎn)不會被加鎖,因此甚至在程序運行時文件就可以被覆蓋。當(dāng)文件更新后,系統(tǒng)會溫和地轉(zhuǎn)換到新的版本。</p><p> 4、ASP.NET采取"code-behind"方式編寫代碼使得代碼更易于編寫,結(jié)構(gòu)更清晰,降低了系統(tǒng)的開發(fā)與維護(hù)的復(fù)雜度和費用。</p><p> 所以本系統(tǒng)將采用基于ASP.NET的C#語言進(jìn)行開發(fā)。</p><p>
41、 1.3.4 系統(tǒng)運行軟件平臺 </p><p><b> 1、服務(wù)器端:</b></p><p> 操作系統(tǒng): Window 2000 (或更高)、Microsoft .NET Framework v1.1、asp.net 1.0、SQL Server 2000(或更高)。 </p><p><b> 2、客戶端:</b
42、></p><p> 瀏覽器:Netscape7.0,Opera7,Internet Explorer 6.0 sp1以及其它支持xhtml 1.0標(biāo)準(zhǔn)的移動設(shè)備。</p><p><b> 1.4 全文體系</b></p><p> 第一章簡述了系統(tǒng)的開發(fā)背景、發(fā)展現(xiàn)狀及目的,介紹.Net和SQL Sverver的相關(guān)技術(shù)。<
43、;/p><p> 第二章介紹了基于Web的數(shù)據(jù)庫技術(shù)的發(fā)展情況,并詳細(xì)介紹了瀏覽器用及務(wù)器模式的工作方式及特點,同時詳細(xì)還介紹了實現(xiàn)Web數(shù)據(jù)庫的不同方法及ASP.net技術(shù)在性能方面的優(yōu)越性。</p><p> 第三章討論了運用軟件工程的思想,做畢業(yè)設(shè)計管理的系統(tǒng)功能需求、以及整個系統(tǒng)的設(shè)計與分析。</p><p> 第四章主要介紹畢業(yè)設(shè)計管理系統(tǒng)的功能結(jié)構(gòu)和具
44、體實現(xiàn),以及所采取的安全控制技術(shù)。</p><p> 第五章是結(jié)束語。總結(jié)了全文的主要思想,分析了今后繼續(xù)努力的方向。</p><p> 國際互聯(lián)網(wǎng)技術(shù)日新月異,極大地推動了基于Internet的應(yīng)用技術(shù)的發(fā)展。支持Web數(shù)據(jù)庫訪問的新技術(shù)也層出不窮。隨著校園網(wǎng)的發(fā)展,基于Internet的各種教學(xué)管理系統(tǒng)、學(xué)生管理系統(tǒng)也在不斷地深入和發(fā)展。本文所介紹的“基于Web的畢業(yè)設(shè)計管理系統(tǒng)的
45、設(shè)計與實現(xiàn)”僅僅是高校管理信息系統(tǒng)的一個小模塊,今后我們將進(jìn)一步努力,不斷地學(xué)習(xí)新知識,爭取將這個系統(tǒng)做到更加完善。</p><p> 第二章 基于Web的數(shù)據(jù)庫技術(shù)分析</p><p> 當(dāng)計算機(jī)的應(yīng)用開始從數(shù)值計算向數(shù)據(jù)庫方面發(fā)展的時候,許多公司和機(jī)構(gòu)都致力于建立一種完美的數(shù)據(jù)庫運行的體系結(jié)構(gòu)。網(wǎng)絡(luò)的出現(xiàn)給計算機(jī)帶來一次重大的改革,為了適應(yīng)網(wǎng)絡(luò)環(huán)境下的數(shù)據(jù)庫應(yīng)用,人們依據(jù)計算機(jī)的應(yīng)
46、用特點和應(yīng)用功能的劃分方式,提出了一系列應(yīng)用框架—主機(jī)/終端模式、客戶機(jī)/服務(wù)器模式以及隨后的瀏覽器/服務(wù)器模式。在構(gòu)造一個應(yīng)用系統(tǒng)時,我們首先要考慮的是系統(tǒng)的體系結(jié)構(gòu),采用哪種結(jié)構(gòu)取決于系統(tǒng)的網(wǎng)絡(luò)環(huán)境、應(yīng)用需求等因素。</p><p> 2.1 數(shù)據(jù)庫應(yīng)用系統(tǒng)的層次體系</p><p> 2.1.1 終端/主機(jī)體系結(jié)構(gòu)</p><p> 這是一種早期處理數(shù)據(jù)
47、所采用的模式,如圖2-1所示。這種體系結(jié)構(gòu)使得用戶能夠盡可能地使用共享資源,終端所要做的事只是輸入命令,顯示結(jié)果,而有關(guān)的一切數(shù)據(jù)處理都交給了主機(jī)去完成。在這樣的結(jié)構(gòu)中,由于終端不需要做什么處理工作,所以它可以很簡單,也不必隨著信息業(yè)的發(fā)展頻繁更新,因此也稱“啞”終端,但主機(jī)就不一樣了,它幾乎包攬了有關(guān)數(shù)據(jù)的一切處理工作,這就要求它具有十分高的性能,并且能夠隨著信息量的增加不斷更新。[4]</p><p> 這
48、種模式中,服務(wù)器存儲所有數(shù)據(jù),進(jìn)行所有處理運算,資源也得到了充分的共享。但是用戶界面不友好,主機(jī)負(fù)載過大。</p><p> 2.1.2 客戶機(jī)/服務(wù)器體系結(jié)構(gòu)[5、6]</p><p> 傳統(tǒng)的C/S結(jié)構(gòu)是兩層的,基本思想是:服務(wù)器提供數(shù)據(jù)的存取和管理等,客戶端運行相應(yīng)的應(yīng)用,通過網(wǎng)絡(luò)獲得服務(wù)器的服務(wù),使用服務(wù)器上的數(shù)據(jù)庫資源。與主機(jī)/終端模式相比,C/S結(jié)構(gòu)更容易擴(kuò)充,更加靈活。當(dāng)
49、信息系統(tǒng)的規(guī)模擴(kuò)大或需求改變時,不必重新設(shè)計便可在原有基礎(chǔ)上進(jìn)行擴(kuò)充和調(diào)整,從而保護(hù)了己有投資。為了應(yīng)用客戶機(jī)/服務(wù)器這種體系結(jié)構(gòu),原來完全放在主機(jī)上的應(yīng)用程序被分成了兩部分:客戶機(jī)端的應(yīng)用程序和服務(wù)器端的應(yīng)用程序,如圖2.2所示。</p><p> 由于兩層結(jié)構(gòu)的C/S系統(tǒng)本身固有的缺陷,使得它不能應(yīng)用于一些大型的、結(jié)構(gòu)復(fù)雜的系統(tǒng)中,由此出現(xiàn)了三層結(jié)構(gòu)的C/S系統(tǒng),它把兩層結(jié)構(gòu)中服務(wù)器部分和客戶端部分的應(yīng)用單
50、獨劃分出來,從而滿足了大型應(yīng)用系統(tǒng)的需求。 </p><p> 典型的數(shù)據(jù)庫應(yīng)用可分成三部分:即表示部分、應(yīng)用邏輯部分和數(shù)據(jù)訪問部分。由此,三層C/S結(jié)構(gòu)將應(yīng)用的三部分明確地進(jìn)行分割,使其在邏輯上各自獨立,并且單獨加以實現(xiàn),分別稱之為客戶服務(wù)器、應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器。與兩層C/S結(jié)構(gòu)相比,其應(yīng)用邏輯部分被明確地劃分出來。在硬件實現(xiàn)上,有兩種方式:</p><p> 1、客戶位于客戶
51、機(jī)上,應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器位于同一主機(jī)上。這種方式在主機(jī)具有良好性能的前提下,能保證應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器之間的通信效率,減少客戶和應(yīng)用服務(wù)器之間網(wǎng)絡(luò)上的數(shù)據(jù)傳輸,使系統(tǒng)具有好的性能。如圖2.3所示。</p><p> 2、客戶位于客戶機(jī)上,應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器位于不同主機(jī)上。這種方式更加靈活,能夠適應(yīng)客戶機(jī)數(shù)目的增加和應(yīng)用處理負(fù)荷的變動。在增加新的應(yīng)用邏輯時,可以追加新的應(yīng)用服務(wù)器。系統(tǒng)規(guī)模越大,這
52、種方式的優(yōu)點體現(xiàn)得越明顯。如圖2.4所示。</p><p> 兩種方式在復(fù)雜應(yīng)用下,使整個系統(tǒng)達(dá)到高性能的關(guān)鍵是應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器間的數(shù)據(jù)通信效率,它對于應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器位于不同主機(jī)上的第二種方式來說尤為重要。</p><p> 三層C/S模式的功能:</p><p> 1、客戶:是應(yīng)用的用戶接口部分,負(fù)責(zé)用戶與應(yīng)用程序的交互。它接受用戶的輸入請
53、 求,將結(jié)果以適當(dāng)?shù)男问椒祷赜脩?,常以圖形用戶界面(GUI)表現(xiàn)出來??蛻舻腉UI界面應(yīng)當(dāng)易于生成和修改,并盡量與其他兩層保持獨立,以適應(yīng)應(yīng)用的變化。</p><p> 2、應(yīng)用服務(wù)器:是應(yīng)用邏輯處理的核心,是具體業(yè)務(wù)的實現(xiàn)。它與客戶間的數(shù)據(jù)交往應(yīng)盡量簡潔,客戶將請求信息發(fā)送給應(yīng)用服務(wù)器,應(yīng)用服務(wù)器返回數(shù)據(jù)和結(jié)果。</p><p> 應(yīng)用服務(wù)器一般和數(shù)據(jù)庫服務(wù)器有密切交往,應(yīng)用服務(wù)器
54、向數(shù)據(jù)庫服務(wù)器發(fā)送SQL請求,數(shù)據(jù)庫服務(wù)器將數(shù)據(jù)訪問結(jié)果返回給應(yīng)用服務(wù)器。此外,應(yīng)用服務(wù)器也可能和數(shù)據(jù)庫服務(wù)器沒有交換,而作為客戶的獨立服務(wù)器使用。應(yīng)用邏輯變得復(fù)雜或增加新的應(yīng)用時,可增加新的應(yīng)用服務(wù)器,它可與原應(yīng)用服務(wù)器駐留于同一主機(jī)或是不同主機(jī)上。</p><p> 3、數(shù)據(jù)庫服務(wù)器:以傳統(tǒng)的基于SQL的DBMS實現(xiàn),它接收應(yīng)用服務(wù)器提出的SQL請求,完成數(shù)據(jù)的存儲、訪問和完整性約束等。</p>
55、<p> 2.1.3 瀏覽器/服務(wù)器結(jié)構(gòu)[8、9、10]</p><p> 在典型的客戶機(jī)服務(wù)器體系中,那種為客戶安裝前端應(yīng)用程序的方法已不再現(xiàn)實,甚至限制客戶端的工作環(huán)境只能基于Windows、Macintosh或UNIX等亦不切實際。人們不能開發(fā)那種只能用于特定計算環(huán)境的軟件,且在自己的WEB站點上同時保存某個應(yīng)用程序的多個特定平臺的版本是不可行的,因為這樣不但使軟件開發(fā)成本大幅度上漲,而且
56、客戶端的計算環(huán)境可能是干變?nèi)f化的,無法預(yù)知客戶端的計算環(huán)境什么時候已經(jīng)或?qū)⒁骱畏N改變。不過可以要求在客戶機(jī)上安裝某種具有一定“翻譯”功能的統(tǒng)一的構(gòu)件,這個構(gòu)件便是瀏覽器。它作為操作系統(tǒng)的一種擴(kuò)展,充當(dāng)?shù)氖怯脩粲嬎銠C(jī)與Internet之間的一個接口,隨著瀏覽器功能的不斷增強(qiáng),它有望成為將來大部分應(yīng)用程序運行的主要環(huán)境外殼。</p><p> 于是基于瀏覽器/服務(wù)器模式的系統(tǒng)應(yīng)運而生,它繼承了客戶機(jī)/服務(wù)器模式的
57、所有優(yōu)點而克服了它的缺點。瀏覽器/服務(wù)器模式不受具體操作系統(tǒng)和硬件的制約,可以很容易地構(gòu)筑大型實用的網(wǎng)絡(luò),不需要一個統(tǒng)一客戶機(jī)和服務(wù)器的操作系統(tǒng)。防止了“胖客戶機(jī)”現(xiàn)象的產(chǎn)生,非常容易實現(xiàn)不同網(wǎng)絡(luò)間的連接[11]。</p><p> 瀏覽器/服務(wù)器的工作原理和過程:</p><p> 在瀏覽器/服務(wù)器模式中,客戶端的標(biāo)準(zhǔn)配置是瀏覽器,如,IE:業(yè)務(wù)功能處理從C/S代碼中徹底分離出來,由
58、獨立的應(yīng)用服務(wù)器處理,WEB服務(wù)器成為應(yīng)用處理的標(biāo)準(zhǔn)配置:數(shù)據(jù)處理仍然由數(shù)據(jù)庫服務(wù)器〔DB Server)完成。圖2.5為瀏覽器/服務(wù)器模式構(gòu)成及數(shù)據(jù)處理方式。瀏覽器/服務(wù)器模式是三層分布結(jié)構(gòu),即瀏覽器—Web服務(wù)器—數(shù)據(jù)庫服務(wù)器。</p><p> 一般情況下的工作流程為:</p><p> 1、用戶輸入所要啟動的主頁URL(統(tǒng)一資源定位),瀏覽器將生成一個HTTP請求并把它發(fā)送到指
59、定的web服務(wù)器。</p><p> 2、服務(wù)器把主頁發(fā)回給瀏覽器,瀏覽器將其顯示在屏幕上。</p><p> 3、用戶閱讀相關(guān)信息,可繼續(xù)查找有關(guān)信息,向瀏覽器發(fā)出請求。</p><p> 4、瀏覽器發(fā)送一個請求給相應(yīng)的服務(wù)器,并把由URL標(biāo)識的文檔/文件返回屏幕。</p><p> 5、服務(wù)器收到請求后,查看本站點是否有該文檔:若
60、有,則把該文檔放入響應(yīng)信息中返回瀏覽器。</p><p> 6、瀏覽器收到響應(yīng),查看頭文件格式,判斷是否能直接顯示。若能就顯示出來,否則,調(diào)用對應(yīng)的幫助應(yīng)用程序或外掛程序處理。</p><p> 7、瀏覽器等待用戶的下一條指令,而服務(wù)器準(zhǔn)備接受來自瀏覽器的下一條請求。</p><p> 2.1.4 C/S結(jié)構(gòu)與B/S結(jié)構(gòu)的比較</p><p
61、> 與C/S相比,B/S在許多方面體現(xiàn)了很大的優(yōu)勢,主要體現(xiàn)在以下幾個方面:</p><p><b> 1、開發(fā)和維護(hù)成本</b></p><p> C/S開發(fā)和維護(hù)成本較高,對不同的客戶端要開發(fā)不同程序,編程工作量大,對于B/S,只需在客戶端安裝通用的瀏覽器,所有的維護(hù)和升級工作都是在服務(wù)器上執(zhí)行的,不需對客戶端進(jìn)行任何改變,故而大大降低了開發(fā)和維護(hù)成本
62、。</p><p><b> 2、客戶端任務(wù)</b></p><p> C/S的客戶端具有顯示和處理數(shù)據(jù)的功能,任務(wù)過重,B/S的客戶端把事務(wù)邏輯部分分給了服務(wù)器,不再負(fù)責(zé)處理復(fù)雜計算和數(shù)據(jù)訪問等關(guān)鍵事務(wù),只負(fù)責(zé)顯示部分,任務(wù)大大減輕。</p><p><b> 3、采用的標(biāo)準(zhǔn)</b></p><
63、p> C/S所采用的標(biāo)準(zhǔn)只在內(nèi)部統(tǒng)一,其應(yīng)用通常是專用的。B/S所采用的標(biāo)準(zhǔn)是開放的、非專用的,保證了其應(yīng)用的通用性和跨平臺性。</p><p><b> 4、靈活性</b></p><p> C/S系統(tǒng)模塊中每一部分的變動均要影響到其它模塊的變動,系統(tǒng)升級困難,靈活性差。B/S各層之間相互獨立,任何一層的改變不影響其它層的功能,系統(tǒng)改進(jìn)非常容易,靈活性好
64、。</p><p><b> 5、安全性</b></p><p> C/S系統(tǒng)中的客戶機(jī)直接與服務(wù)器相連,非法用戶可以很容易地通過應(yīng)用程序侵入系統(tǒng),并對服務(wù)器數(shù)據(jù)庫進(jìn)行操作,這給系統(tǒng)的安全性帶來極大的隱患。B/S系統(tǒng)在客戶機(jī)和服務(wù)器之間增加了一層Web服務(wù)器,是兩者不在相連,客戶機(jī)無法直接對數(shù)據(jù)庫操作,可有效地防止用戶的非法入侵。</p><p
65、><b> 6、移植性</b></p><p> C/S系統(tǒng)對不同工具開發(fā)的應(yīng)用程序,一般來說互不兼容,難以移植到其它平臺上運行,移植性差。B/S系統(tǒng)在客戶端安裝的是通用瀏覽器,不存在移植性問題。</p><p><b> 7、用戶界面風(fēng)格</b></p><p> C/S用戶的界面由客戶端應(yīng)用程序決定,用戶
66、界面各不相同。B/S只需在客戶端安裝通用的瀏覽器就可以訪問應(yīng)用程序,瀏覽器的界面統(tǒng)一友好,易于使用。</p><p> 通過以上對C/S和B/S的介紹和比較,B/S的優(yōu)點非常明顯,因此,本系統(tǒng)將采用B/S模式來開發(fā)畢業(yè)設(shè)計管理系統(tǒng)。</p><p> 2.2 Web數(shù)據(jù)庫管理系統(tǒng)介紹</p><p> Web數(shù)據(jù)庫管理系統(tǒng)[16]是指基于Web模式的DBMS的
67、信息服務(wù),充分發(fā)揮DBMS高效的數(shù)據(jù)存儲和管理能力,以Web這種瀏覽器用民務(wù)器(B/S)模式為平臺,將客戶端融入統(tǒng)一的Web瀏覽器,為Internet用戶提供使用簡便、內(nèi)容豐富的服務(wù)。更好的實現(xiàn)不同地域的其他人使用這些信息。</p><p> 2.2.1 Web數(shù)據(jù)庫管理系統(tǒng)的工作原理[12、13]</p><p> 在WWW中,瀏覽器是用戶可見的存在界面,在該界面中,用戶輸入信息,瀏
68、覽器將該輸入信息發(fā)送到服務(wù)器端。由服務(wù)器通過外部程序訪問數(shù)據(jù)庫,并將結(jié)果返回給瀏覽器。其工作原理如圖2-6所示。</p><p> 基于Web的數(shù)據(jù)庫采用3層的客戶端/服務(wù)器結(jié)構(gòu):第一層是瀏覽器,第二層是Web服務(wù)器,第三層包括一些應(yīng)用程序及相關(guān)的數(shù)據(jù)庫。瀏覽器作為用戶輸入查詢條件和顯示查詢結(jié)果的交互界面,用戶可以通過填寫表單或輸入關(guān)鍵字的方式來與Web交互。當(dāng)用戶單擊表單上的按鈕時,表單中的數(shù)據(jù)便被發(fā)送到We
69、b服務(wù)器。Web服務(wù)器負(fù)責(zé)用戶輸入信息的接收,它將數(shù)據(jù)傳送至要被處理的腳本或應(yīng)用程序,并在數(shù)據(jù)庫中查詢數(shù)據(jù)。最后,Web服務(wù)器將返回結(jié)果插入到HTML頁面,傳送至瀏覽器以響應(yīng)用戶。</p><p> 2.2.2 利用WWW訪問數(shù)據(jù)庫的優(yōu)點</p><p> 與傳統(tǒng)方式相比,通過WWW訪問數(shù)據(jù)庫的優(yōu)點在于:</p><p> 1、借用瀏覽器軟件,無需開發(fā)數(shù)據(jù)庫前
70、端;如果能夠通過WWW來訪問數(shù)據(jù)庫,我們就不需要開發(fā)客戶端的程序,使用的數(shù)據(jù)庫應(yīng)用都可以通過瀏覽器來實現(xiàn),界面統(tǒng)一,降低了成本,能使廣大用戶很方便地訪問數(shù)據(jù)庫信息.</p><p> 2、標(biāo)準(zhǔn)統(tǒng)一,開發(fā)過程簡單:HTML是WWW信息的組織方式,是一種國際標(biāo)準(zhǔn),使用的www服務(wù)器與瀏覽器均遵循這個標(biāo)準(zhǔn)。使用HTML標(biāo)準(zhǔn),開發(fā)者甚至只需學(xué)習(xí)HTML一種語言,使用者只需學(xué)習(xí)一種界面—瀏覽器界面。</p>
71、<p> 3、交叉平臺支持,幾乎在各種操作系統(tǒng)上都有現(xiàn)成的瀏覽器可供使用,為一個www服務(wù)器書寫的HTML文件,可以被所有平臺的瀏覽器所瀏覽,實現(xiàn)了跨平臺操作。 實現(xiàn)www數(shù)據(jù)庫的方法有很多,如中間件技術(shù)、JAVA技術(shù)、下載到客戶端訪問技術(shù)、ASP技術(shù)、ASP.NET技術(shù)、PHP技術(shù)等。</p><p> 2.2.3 訪問Web數(shù)據(jù)庫的不同方法[14、15]</p><p>
72、; 實現(xiàn)www數(shù)據(jù)庫的方法很多,它不僅與操作系統(tǒng)有關(guān),而且與數(shù)據(jù)庫管理系統(tǒng)有關(guān)。主要方法有以下幾種:</p><p><b> 1、中間件技術(shù)</b></p><p> 數(shù)據(jù)庫中間件作為前端瀏覽器與后端服務(wù)器間的一個橋梁,不僅可與數(shù)據(jù)庫相連接,也可以傳統(tǒng)的C/S環(huán)境下的的客戶端的應(yīng)用處理移植到中間層上,減輕客戶端的負(fù)擔(dān),這也是一種“瘦客戶端”的技術(shù)。</p
73、><p><b> 1.CGI</b></p><p> CGI (Common Gateway Interface),即“通用網(wǎng)關(guān)接口”,它是一個用于定義Web服務(wù)器與外部程序之間通信方式的標(biāo)準(zhǔn),使得外部程序能夠生成HTML、圖像或者其它內(nèi)容。按照這種標(biāo)準(zhǔn)編制的CGI應(yīng)用程序由客戶端的Web頁面啟動,在Web服務(wù)器的后臺執(zhí)行相應(yīng)的功能。CGI程序在開發(fā)Web數(shù)據(jù)
74、庫中的作用類似于一個中介商,它在瀏覽器、Web服務(wù)器和數(shù)據(jù)庫之間傳遞信息。</p><p> CGI程序可以是服務(wù)器上能運行的任何文件,它可以是C、VB和JAVA等語言,甚至可以用一些描述性的語言編寫。其應(yīng)用程序也較多,也比較規(guī)范。但是CGI程序每次請求都必須重新啟動,效率低,速度慢。一般的CGI執(zhí)行必須先啟動一個線程,當(dāng)多個用戶訪問一個CGI程序時,服務(wù)器端為每個用戶產(chǎn)生一個線程,如果訪問量很大的話,幾十萬個
75、用戶同時啟動服務(wù)器的CGI程序,將會耗費服務(wù)器的大量資源,服務(wù)器會因線程的增加而變慢,甚至導(dǎo)致服務(wù)器崩潰。這是CGI的一個致命弱點。</p><p><b> 2.API</b></p><p> API (Application Programming Interface),即“應(yīng)用程序接口”。它由各種Web服務(wù)器軟件提供,同數(shù)據(jù)庫系統(tǒng)的功能接口不盡相同。如
76、Netscape和Microsoft公司推出的運行于各自服務(wù)器軟件的NSAPI和ISAPI,它們和web server軟件處于相同的地址空間,服務(wù)器進(jìn)程可直接調(diào)用這些API。所以,用API比用CGI的速度快得多,但NSAPI和ISAPI互不兼容,只能運行于特定的服務(wù)器與操作系統(tǒng)上.移植性差。</p><p><b> 2、JAVA技術(shù)</b></p><p> 用
77、JAVA語言實現(xiàn)www數(shù)據(jù)庫,該技術(shù)主要是作用于JDBC技術(shù)訪問數(shù)據(jù)庫。JDBC是一種規(guī)范,其宗旨是讓各數(shù)據(jù)庫開發(fā)商為JAVA程序員提供標(biāo)準(zhǔn)的數(shù)據(jù)庫訪問類和接口。JDBC與JAVA的結(jié)合,使用戶可以很容易地把SQL語句傳送到任何關(guān)系數(shù)據(jù)庫中。JDBC才是實現(xiàn)與數(shù)據(jù)庫聯(lián)接和實現(xiàn)對數(shù)據(jù)庫操作的關(guān)鍵。但目前JDBC標(biāo)準(zhǔn)尚不完善,訪問數(shù)據(jù)庫的速度慢,對硬件要求也高,在開發(fā)大型復(fù)雜Web數(shù)據(jù)庫應(yīng)用時,該方法顯得有點遜色。</p>&
78、lt;p><b> 3、客戶端技術(shù)</b></p><p> 可以通過Web瀏覽器把應(yīng)用程序下載到客戶端運行,在客戶端直接訪數(shù)據(jù)庫,如Java,Applet, Active X等??蛻舳擞肑avaScript語言來控制,但該技術(shù)功能有限,不能完全控制其過程,也無法勝任較復(fù)雜的www數(shù)據(jù)庫的開發(fā)。</p><p><b> 4、PHP技術(shù)<
79、/b></p><p> PHP (Hypertext Preprocessor),類似于IIS上的ASP,是一個HTML內(nèi)嵌式的語言,它幾乎支持所有的數(shù)據(jù)庫,也可在多平臺上運行,主要用在UNIX/Linux系統(tǒng)上,也支持Windows NT版本。穩(wěn)定性能好,安全性高。但因它對不同數(shù)據(jù)庫操作所使用的函數(shù)不相同、故當(dāng)數(shù)據(jù)庫發(fā)生變化時,改動會非常大,并且PHP的安裝,尤其在IIS上的安裝很麻煩。</p&
80、gt;<p><b> 5、ASP技術(shù)</b></p><p> ASP是基于Web的一種編程技術(shù),可以輕松地實現(xiàn)對頁面內(nèi)容的動態(tài)控制,根據(jù)不同的瀏覽者,顯示不同的頁面內(nèi)容。而瀏覽者一點覺察不出來,就像為他專門制作的頁面一樣。有ADO (Active Database Object,動態(tài)數(shù)據(jù)庫對象)的支持,ASP對數(shù)據(jù)庫的操作非常得心應(yīng)手。你甚至可以像使用本地數(shù)據(jù)庫那樣,管
81、理遠(yuǎn)程主機(jī)上的數(shù)據(jù)庫,對表格、記錄進(jìn)行各種操作。</p><p> ASP著重于處理動態(tài)網(wǎng)頁和Web數(shù)據(jù)庫的開發(fā),編程靈活、簡潔,具有較高的性能,是目前訪問Web數(shù)據(jù)庫的最佳選擇。</p><p> 2.2.4 ASP.net與以上開發(fā)Web數(shù)據(jù)庫方式相比的優(yōu)勢</p><p> ASP.net 是一種建立在通用語言上的程序構(gòu)架,能被用于一臺Web服務(wù)器來建立
82、強(qiáng)大的Web應(yīng)用程序。ASP.net提供許多比現(xiàn)在的Web開發(fā)模式強(qiáng)大的的優(yōu)勢。在性能和效率方面的優(yōu)越性源于它先進(jìn)的體系結(jié)構(gòu),ASP.net直接建立于Web服務(wù)器中,并且是作為Web服務(wù)器的一個服務(wù)運行,支持多用戶,多線程。其擁有強(qiáng)有力的會話管理機(jī)制,它可以實現(xiàn)各請求之間的信息共享,提高了效率。在安全性方面也作了細(xì)心的考慮,使得其更加安全可靠。</p><p> ASP.NET與ASP無論在開發(fā)語言、運行機(jī)制還
83、是開發(fā)方式上都有很大的區(qū)別。ASP僅局限于使用腳本語言來開發(fā),用戶給WEB頁中添加ASP代碼的方法與客戶端腳本中添加代碼的方法相同,導(dǎo)致代碼雜亂。而ASP.NET允許用戶選擇并使用功能完善的編程語言,也允許使用功能巨大的.NET Framework。ASP是解釋運行的編程框架,所以執(zhí)行效率加較低。而ASP.NET是編譯性的編程框架,運行是服務(wù)器上的編譯好的公共語言運行時庫代碼,可以利用早期綁定,實施編譯來提高效率。ASP把界面設(shè)計和程序
84、設(shè)計混在一起,維護(hù)困難。ASP.NET把界面設(shè)計和程序設(shè)計以不同的文件分離開,復(fù)用性和維護(hù)性得到了提高。</p><p> 用微軟官員的話來說就是:“……因特網(wǎng)的革命……從微軟的角度來講,我們就是要建設(shè)一個平臺來創(chuàng)建并且支持新一代的應(yīng)用?!覀儽仨氂幸惶淄ㄓ孟到y(tǒng)服務(wù)來支持這樣的操作。這種觀點就說明,我們還有下一個層次的發(fā)展,也就是說因特網(wǎng)下一步的發(fā)展,它將使因特網(wǎng)的作用遠(yuǎn)遠(yuǎn)超越展現(xiàn)一個網(wǎng)站。[5、6]”<
85、;/p><p> 隨著Internet技術(shù)的發(fā)展,開發(fā)基于Web的應(yīng)用程序勢在必行,數(shù)據(jù)庫技術(shù)更是需要和Web技術(shù)相結(jié)合,才有更為廣闊的前景。ASP.net作為微軟推出的新興Web應(yīng)用程序開發(fā)技術(shù),在數(shù)據(jù)庫應(yīng)用方面必將發(fā)揮越來越重要的作用,同時瀏覽器/服務(wù)器模式的數(shù)據(jù)庫體系也將逐漸成為數(shù)據(jù)庫結(jié)構(gòu)的主流。故而本系統(tǒng)采用基于ASP.NET的以C# 作為在該平臺開發(fā)的主要實現(xiàn)語言進(jìn)行開發(fā)。</p><
86、p><b> 2.3 本章小結(jié)</b></p><p> 本章首先介紹了數(shù)據(jù)庫運行的三種不同的體系結(jié)構(gòu),即主機(jī)/終端結(jié)構(gòu)、客戶機(jī)/服務(wù)器結(jié)構(gòu)、瀏覽器/服務(wù)器結(jié)構(gòu),并詳細(xì)介紹了瀏覽器/服務(wù)器的工作原理、工作流程及其在性能方面的優(yōu)勢。隨后,介紹了Web數(shù)據(jù)庫管理系統(tǒng)的概念,描述了其工作原理,并且討論了實現(xiàn)Web數(shù)據(jù)庫的幾種不同方法,包括中間件技術(shù)(CGI和API )、JAVA技術(shù)、客戶
87、端技術(shù)、ASP技術(shù)和PHP技術(shù)等。最后還分析、討論了ASP.net技術(shù)在性能方面的優(yōu)缺點,通過分析比較,得出了利用ASP.net技術(shù)來實現(xiàn)Web數(shù)據(jù)庫的訪問的優(yōu)勢。</p><p> 第三章 系統(tǒng)分析與設(shè)計</p><p> 系統(tǒng)分析和設(shè)計是信息系統(tǒng)開發(fā)的一個重要環(huán)節(jié)。本章將主要介紹一個基于WEB的B/S結(jié)構(gòu)的畢業(yè)設(shè)計管理系統(tǒng)的功能需求、總體框架、以及系統(tǒng)開發(fā)原理等做系統(tǒng)的分析研究,并
88、介紹系統(tǒng)所擁有的特點。</p><p> 3.1 系統(tǒng)的功能需求</p><p> 該系統(tǒng)一般包括對選題的發(fā)布、更新、刪除,學(xué)生畢業(yè)設(shè)計文檔信息、導(dǎo)師文檔信息的上傳(在指導(dǎo)時間前才可提交)和相關(guān)信息的發(fā)布、查詢、更新、輸出等功能。如果人工直接操作的話,工作量將十分龐大,特別是,如果學(xué)生人數(shù)有幾千或上萬時,人工操作將變得相當(dāng)繁雜。用計算機(jī)可使人們從繁重而又單調(diào)的工作中解脫出來,僅用一些簡
89、單的操作便可及時準(zhǔn)確地獲得需要的信息。畢業(yè)設(shè)計管理系統(tǒng)是一個為適應(yīng)當(dāng)前畢業(yè)設(shè)計管理工作的需求而設(shè)計開發(fā)的軟件系統(tǒng)。該系統(tǒng)的前臺采用的是MS Visual Studio.NET2003開發(fā)系統(tǒng),Dreamweaver做頁面設(shè)計,后臺數(shù)據(jù)庫采用的是SQL Server 2000數(shù)據(jù)庫。</p><p> 對系統(tǒng)功能的規(guī)定:該系統(tǒng)的角色是學(xué)生、教師(導(dǎo)師)和系統(tǒng)管理員。學(xué)生和教師是系統(tǒng)的用戶,而系統(tǒng)管理員是系統(tǒng)管理者
90、,雖然系統(tǒng)管理者也是一個用戶,但并不影響本系統(tǒng)的功能。</p><p> 該系統(tǒng)的分析可以用UML來描述,如下圖3.1所示。</p><p><b> 3.2 系統(tǒng)介紹</b></p><p> 3.2.1 總體框架</p><p> 本系統(tǒng)采用的是基本的B/S結(jié)構(gòu)模式開發(fā),其具體的框架如下圖3.2所示:<
91、/p><p> 3.2.2 系統(tǒng)功能特點</p><p> 1、操作簡單、界面友好:完全控件式的頁面布局,使得所有的錄入工作更簡便;另外,跟蹤出現(xiàn)的提示信息也讓用戶隨時清楚自己的操作情況。</p><p> 2、即時可見:對操作的處理(包括上傳、修改、刪除等)將立即在頁面的對應(yīng)欄目顯示出來,達(dá)到"即時發(fā)布、即時見效"的功能。</p>
92、<p> 3、功能完善:包括常見網(wǎng)站的管理的各個方面:錄入、瀏覽、刪除、修改、檢索等各個方面,完整地實現(xiàn)了系統(tǒng)對各項工作的管理要求。</p><p> 4、方便移植:針對不同的學(xué)院,只需要稍作修改就可以開發(fā)出適合本學(xué)院特點的畢業(yè)設(shè)計管理系統(tǒng)。</p><p><b> 3.3 系統(tǒng)設(shè)計</b></p><p> 3.3.1
93、 系統(tǒng)的開發(fā)原理</p><p> 3.3.1.1基于ASP.NET技術(shù)的系統(tǒng)結(jié)構(gòu)模型</p><p> ASP.NET結(jié)構(gòu)是一個三層系統(tǒng):UI層、業(yè)務(wù)邏輯層和數(shù)據(jù)層,如圖3.3所示。</p><p> UI層負(fù)責(zé)與用戶交互,接收用戶的輸入并將服務(wù)器端傳來的數(shù)據(jù)呈現(xiàn)給客戶。</p><p> 業(yè)務(wù)邏輯層負(fù)責(zé)接收瀏覽器傳來的請求并將請求
94、傳給數(shù)據(jù)層,同時將請求處理結(jié)果發(fā)給瀏覽器。它由Web表單、XML Web服務(wù)和組件服務(wù)組成。其中Web表單是ASP.NET應(yīng)用程序的核心所在,它是向客戶呈現(xiàn)數(shù)據(jù)和信息的基礎(chǔ),也是響應(yīng)和處理客戶與顯示的Web表單交互生成的信息和數(shù)據(jù)的基礎(chǔ)。</p><p> 數(shù)據(jù)層是通過ADO.NET操縱數(shù)據(jù)為事務(wù)邏輯層提供數(shù)據(jù)服務(wù),如存儲數(shù)據(jù)操作結(jié)果、返回數(shù)據(jù)檢索結(jié)果等。</p><p> 3.3.1
95、.2 ADO.NET訪問數(shù)據(jù)庫的原理</p><p> 與數(shù)據(jù)庫相連,ADO.NET提供了如下3種方式:通過ODBC相連;通過OLEDB相連;直接與SQL Server相連。3種方式由于應(yīng)用層次的差異,使得效率由低到高,獨立性由高到低。對于相連數(shù)據(jù)庫的數(shù)據(jù)處理,也有2種方式,即一種是通過DataSet來隔離異構(gòu)的數(shù)據(jù)源,另一種是以流方式從數(shù)據(jù)源讀取(DataReader方式)。</p><p
96、> 傳統(tǒng)的應(yīng)用程序是通過先建立到數(shù)據(jù)庫的連接,在程序的整個運行過程中維護(hù)連接的方式來設(shè)計的。ASP.NET采取了斷開連接方式的數(shù)據(jù)結(jié)構(gòu)。當(dāng)瀏覽器向Web服務(wù)器請求網(wǎng)頁時,服務(wù)器處理這個請求,并將所請求的網(wǎng)頁發(fā)送給瀏覽器,然后連接就被斷開,直到瀏覽器發(fā)出下一個請求。</p><p> ADO.NET的另一個創(chuàng)新是引入了數(shù)據(jù)集(Dataset)。一個數(shù)據(jù)集是內(nèi)存中提供數(shù)據(jù)關(guān)系圖的高速緩沖區(qū)。數(shù)據(jù)集對數(shù)據(jù)源一
97、無所知,它們可以由程序或通過從數(shù)據(jù)倉庫中調(diào)入數(shù)據(jù)而被生成、填充。不論數(shù)據(jù)從何處獲取,數(shù)據(jù)集都是通過使用同樣的程序模板而被操作的,并且它使用相同的潛在的數(shù)據(jù)緩沖區(qū)。</p><p> 3.3.2 系統(tǒng)的功能設(shè)計</p><p> 本系統(tǒng)的主要功能結(jié)構(gòu)如下:</p><p> 該畢業(yè)管理系統(tǒng)可以在Windows 2000 Server操作系統(tǒng)平臺上運行,Web服務(wù)
98、器為IIS,數(shù)據(jù)庫服務(wù)器為Microsoft SQL Server2000,開發(fā)工具采用的Microsoft Visual Studio .NET和DreamWeaver。圖3.4給出系統(tǒng)的功能結(jié)構(gòu)圖。其工作流程為:用戶登錄通過權(quán)限判斷,游客只能瀏覽首頁內(nèi)容,注冊用戶除了可以完成游客的操作外,還可以閱讀和查詢新聞、下載相關(guān)資料、進(jìn)入學(xué)生(或教師)管理模塊進(jìn)行上傳、修改和刪除等操作。注冊用戶除系統(tǒng)管理員外只能對自己錄入的內(nèi)容進(jìn)行刪改操作。
99、系統(tǒng)管理員具有最高權(quán)限,包括審核注冊用戶信息、發(fā)布信息等。</p><p> 3.3.3 系統(tǒng)的總體設(shè)計</p><p> 本系統(tǒng)的用戶通過首頁,進(jìn)入登陸頁面,通過用戶身份驗證(系統(tǒng)根據(jù)用戶權(quán)限)進(jìn)入不同的管理頁面,用戶通過管理頁面進(jìn)行具體的操作。如圖3.5所示:</p><p> 3.4 系統(tǒng)的詳細(xì)設(shè)計</p><p> 系統(tǒng)的主要
100、功能是通過幾個功能模塊來實現(xiàn)的。具體的設(shè)計過程如下:</p><p> 1、系統(tǒng)登錄:該模塊負(fù)責(zé)將用戶分為學(xué)生、教師和管理員來實現(xiàn)用戶權(quán)限的管理。</p><p> 2、信息發(fā)布模塊主要包括以下:</p><p> (1)信息瀏覽(這里的信息包括新聞公告、規(guī)章制度、設(shè)計安排、推薦范文、表格下載、優(yōu)秀論文、課題的發(fā)布等):該模塊負(fù)責(zé)分頁列出網(wǎng)站所有的信息,包括標(biāo)
101、題、類型、來源部門字段及發(fā)布日期,每條新聞的標(biāo)題被做成一個超鏈接,點擊它們就能跳轉(zhuǎn)頁面進(jìn)行信息閱讀。</p><p> ?。?)信息閱讀:在其他頁面中點擊標(biāo)題鏈接即進(jìn)入信息閱讀頁面,此時,每條信息的詳細(xì)信息將被取出,包括內(nèi)容、標(biāo)題、關(guān)鍵字等,并按照相對固定的格式放置在頁面的不同區(qū)域,所有信息使用大致相同的頁面布局,只是各字段對應(yīng)的內(nèi)容不同而已。</p><p> ?。?)信息查詢:該模塊提
102、供了信息查詢功能,輸入待查找的內(nèi)容及選定分類信息可以快速地找到符合條件的信息,并輸出查詢結(jié)果。</p><p> ?。?)信息管理:該模塊負(fù)責(zé)分頁羅列管理員曾發(fā)布過且未刪除的信息,并可以對該條信息進(jìn)行刪除、修改。此信息除系統(tǒng)管理員外其他用戶不具有對該信息的處理權(quán)限(除教師有發(fā)布選題的權(quán)限外)。</p><p> ?。?)信息錄入和修改:管理員錄入一條信息所需要的內(nèi)容,包含標(biāo)題、關(guān)鍵字、類型
103、、來源部門、發(fā)布日期等,同時從登錄模塊得到用戶名,這些信息將被寫入數(shù)據(jù)庫中保存。該模塊還負(fù)責(zé)編輯狀態(tài)下的更新,這時,它將根據(jù)取得的Info_ID字段值對頁面控件初始化。</p><p> 下面以系統(tǒng)登錄頁面的編寫為例給出主要事件和函數(shù),說明該系統(tǒng)的開發(fā)過程。</p><p> 3、文檔上傳:該模塊負(fù)責(zé)所有用戶的文檔上交工作。每個用戶注冊后有自己單獨的文件夾,登陸后上傳的文檔(在指定時間
104、前上傳)將會被保留在此文件夾中。</p><p> 4、消息處理:主要負(fù)責(zé)各個用戶之間相互發(fā)送消息使用。用戶可輸入對方的用戶名發(fā)送消息給對方。</p><p> 5、用戶注冊:包括學(xué)生和教師的注冊(需在指定時間段內(nèi)注冊或是直接由管理員添加)。</p><p><b> 3.5 本章小結(jié)</b></p><p>
105、本章主要運用軟件工程的基本方法,介紹了畢業(yè)設(shè)計管理系統(tǒng)的功能需求,并對系統(tǒng)進(jìn)行了詳細(xì)的介紹和分析,給出了系統(tǒng)各個功能模塊的主要功能和設(shè)計指標(biāo),使整個系統(tǒng)的設(shè)計思路更加清晰,使用戶和軟件測試等人員對系統(tǒng)有了更加深刻的理解。為系統(tǒng)的具體實現(xiàn)和代碼的編寫工作做了很好的鋪墊。</p><p> 第四章 系統(tǒng)功能的實現(xiàn)</p><p> 《基于WEB的畢業(yè)設(shè)計管理系統(tǒng)的設(shè)計與實現(xiàn)》的任務(wù)是對學(xué)校
106、畢業(yè)設(shè)計管理中的工作進(jìn)行集中處理,使教師與教師之間,教師與學(xué)生之間能更快、更方便的交流,取代原來的電話(或Email)通知和聯(lián)系,材料紙的發(fā)送等諸多不便,也使學(xué)院能更好、更快的發(fā)布最新的關(guān)于畢業(yè)設(shè)計(論文)的相關(guān)信息和通知,及監(jiān)督學(xué)生畢業(yè)設(shè)計(論文)的完成情況和文檔上交情況。該系統(tǒng)主要內(nèi)容包括: 用戶注冊(包括學(xué)生和教師)、教師出題、學(xué)生選題、文檔上交、相互留言等。通過這個系統(tǒng),可以使廣大師生從繁雜瑣碎的事情中解脫出來,專心投入畢業(yè)設(shè)計
107、(論文)的工作中去,提高整個畢業(yè)設(shè)計工作的工作效率。</p><p> 4.1 系統(tǒng)結(jié)構(gòu)和流程圖</p><p> 4.1.1 學(xué)生模塊的結(jié)構(gòu)</p><p> 學(xué)生在注冊通過管理員審核后,登錄系統(tǒng)進(jìn)行相關(guān)操作,包括根據(jù)自己的導(dǎo)師進(jìn)行畢業(yè)設(shè)計(論文)的選題或是自選課題,也可以瀏覽本站的所有信息,包括公告、工作安排等、下載設(shè)計表格、往年優(yōu)秀論文范文以及系統(tǒng)本站提
108、供的其它資料下載等。修改自己的基本資料和密碼,以及上傳和管理自己的文檔資料,還可以給自己的導(dǎo)師留言等。</p><p> 其具體結(jié)構(gòu)如下圖4.1所示:</p><p> 4.1.2 教師模塊的結(jié)構(gòu)</p><p> 教師用戶同樣需要注冊,并通過管理員審核后方可登錄本系統(tǒng)進(jìn)行操作。具體包括如下操作:</p><p> 1、可以給自己所帶
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于web的畢業(yè)設(shè)計管理系統(tǒng)設(shè)計與實現(xiàn)
- 畢業(yè)設(shè)計 基于web的畢業(yè)設(shè)計選題系統(tǒng)的設(shè)計與實現(xiàn)
- 基于web的畢業(yè)設(shè)計管理系統(tǒng)的設(shè)計與實現(xiàn)
- 畢業(yè)設(shè)計---基于web的畢業(yè)設(shè)計選題管理系統(tǒng)
- 畢業(yè)設(shè)計---基于web的畢業(yè)設(shè)計課題系統(tǒng)設(shè)計及實現(xiàn)
- 畢業(yè)設(shè)計---基于web的會務(wù)管理系統(tǒng)的設(shè)計與實現(xiàn)
- 基于web的畢業(yè)論文管理系統(tǒng)的設(shè)計與實現(xiàn)【畢業(yè)設(shè)計】
- 畢業(yè)設(shè)計----基于web的商場管理系統(tǒng)的設(shè)計與實現(xiàn)
- 畢業(yè)設(shè)計---基于web的會務(wù)管理系統(tǒng)的設(shè)計與實現(xiàn)
- 基于WEB的畢業(yè)設(shè)計管理系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 畢業(yè)設(shè)計基于web的選課系統(tǒng)設(shè)計與實現(xiàn)
- 畢業(yè)設(shè)計(論文)基于web的會務(wù)管理系統(tǒng)的設(shè)計與實現(xiàn)
- 畢業(yè)設(shè)計----基于web的畢業(yè)設(shè)計課題系統(tǒng)
- 基于web的畢業(yè)設(shè)計選題系統(tǒng)的設(shè)計與實現(xiàn)
- 基于web的畢業(yè)設(shè)計管理系統(tǒng)
- 畢業(yè)設(shè)計——基于web的綜合實習(xí)管理系統(tǒng)的設(shè)計與實現(xiàn)
- 畢業(yè)設(shè)計(論文)基于web的教材管理系統(tǒng)的設(shè)計與實現(xiàn)
- 基于Web的畢業(yè)設(shè)計管理系統(tǒng)設(shè)計.pdf
- 畢業(yè)設(shè)計(論文)基于web的租賃系統(tǒng)設(shè)計與實現(xiàn)
- 畢業(yè)論文(設(shè)計)基于web的畢業(yè)設(shè)計管理系統(tǒng)
評論
0/150
提交評論