班級管理系統(tǒng)畢業(yè)設計論文(模板)_第1頁
班級管理系統(tǒng)畢業(yè)設計論文(模板)_第2頁
班級管理系統(tǒng)畢業(yè)設計論文(模板)_第3頁
班級管理系統(tǒng)畢業(yè)設計論文(模板)_第4頁
班級管理系統(tǒng)畢業(yè)設計論文(模板)_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、課題名稱班級管理系統(tǒng)姓 名汪詩坤學 號201310030118院、系、部信息科學與技術學院專 業(yè)計算機網(wǎng)絡技術指導教師李坤 2016年 3 月 24 日畢業(yè)設計(論文)聲明本人鄭重聲明:1此畢業(yè)設計(論文)是本人在指導教師指導下獨立進行研究取得的成果。除了特別加以標注地方外,本文不包含其他人或其它機構(gòu)已經(jīng)發(fā)表或撰寫過的研究成果。對本文研究做出重要貢獻的個人與集體均已在文中作了明確標明。本人完全意識到本聲明的法律結(jié)果由本人承擔。2本人完全了解學校、學院有關保留、使用論文的規(guī)定,同意學校與學院保留并向國家有關部門或機構(gòu)送交此論文的復印件和電子版,允許此文被查閱和借閱。本人授權(quán)昭通學院信息科學與技術

2、學院可以將此文的全部或部分內(nèi)容編入有關數(shù)據(jù)庫進行檢索,可以采用影印、縮印或掃描等復制手段保存和匯編本文。3若在昭通學院信息科學與技術學院畢業(yè)論文審查小組復審中,發(fā)現(xiàn)本文有抄襲,一切后果均由本人承擔,與畢業(yè)論文指導老師無關。論文作者(簽名): 年 月 日摘 要學生管理工作是學校各項工作的一個重要部分,其管理水平的高低將直接影響到人才的培養(yǎng)質(zhì)量。隨著昭通學院招生規(guī)模的不斷擴大,學生數(shù)量的不斷增加,學生的信息量也成倍增長。昭通學院多年未變的學生管理信息系統(tǒng)已無法適應現(xiàn)在的信息管理需求。改善原有系統(tǒng)的功能,提高系統(tǒng)的通用性和可擴展性成為學校信息化建設的迫切需求之一。與此同時,隨著Web技術的迅猛發(fā)展和

3、應用,以及面向?qū)ο蠹夹g、組件技術的日益發(fā)展和成熟,Web應用需求日益增多,涉及的領域越來越廣,Web應用系統(tǒng)的復雜性也變得越來越高。Web應用系統(tǒng)已經(jīng)無法再局限于提供一些靜態(tài)或簡單的動態(tài)內(nèi)容。為了適應Web應用的特點,多層體系結(jié)構(gòu)應運而生。其中.NET框架技術的發(fā)展和其他優(yōu)秀框架的出現(xiàn),更是為新一代管理系統(tǒng)提供了強大的技術支持。本文針對昭通學院學生信息管理的業(yè)務流程和特點,研究開發(fā)基于B/S架構(gòu)的班級管理系統(tǒng)。論文分析了昭通師范高等??茖W校的學生管理工作的特點,對.NET多層框架技術進行深入分析和研究,闡述了建立多層框架系統(tǒng)的技術原理,基于.NET技術設計和開發(fā)昭通學院班級管理系統(tǒng)。該系統(tǒng)包括

4、學生管理、成績管理、學生綜合測評、獎學金管理、學生處分管理等功能模塊,系統(tǒng)的開發(fā)和應用將有效提高學校學生管理的工作效率。通過本文的工作,一方面改進了昭通師范高等??茖W校學生信息的管理方式,另一方面也為基于.NET多層次框架來開發(fā)信息管理系統(tǒng)總結(jié)出了部分經(jīng)驗,為今后的工作提供更多的借鑒。關鍵詞:B/S模式,學生信息,管理信息系統(tǒng),.NET技術ABSTRACTStudent management, which effects on the quality of talent cultivation, is one important part of school works. As the sca

5、le of enrollment increasing, the number of students in Zhaotong Teachers college is larger and larger. The quantity of student information has been doubling. With the development in current condition, the changeless SIMS (Student Information Management System) of Zhaotong Teachers college can not sa

6、tisfy the requirement of information management now. It is one of exigent requirement to amend system function and advance the all-purpose and extensibility.At the same time, with the rapid development of Web technology and applications, and object-oriented technology, component technology developme

7、nt and the growing maturity, the web applications have increased, and more and more widely involved in the field. Web application system has become increasingly complex high. Now the Web application system can no longer confined to the provision of some simple static or dynamic content. In order to

8、adapt to the characteristics of Web applications, multilayer framework came into being. The technology development of .NET multilayer framework and other excellent framework provided a powerful technical support for the modern IMS (Information Management System).This thesis aiming at the Zhaotong Te

9、achers college student information management, business process and characteristics researched and developed the student information management system based on B/S architecture. The characteristics of Zhaotong Teachers college students' management have been analyzed in this thesis. The .NET mult

10、ilayer frame technology has been researched. That were described of the technical framework system established multilayer principle, based on the .NET technology design and develop the Zhaotong Teachers college students' management system. This system including the management of students and tea

11、chers' management, course management, grades management, students' comprehensive evaluation, scholarships management, poverty assistance management and students sanction management function module, the development and application of the system will effectively improve the efficiency of the m

12、anagement of students.Through the work of this thesis, on one hand improved the Zhaotong Teachers college student information management mode, on the other hand some experience can be get about how to empolder an IMS by using .NET multilayer framework, for the future work to provide more reference.K

13、ey Words: Browser/Server mode, Student Information, Management Information Systems, .NET Technology目 錄第一章 引言11.1 研究背景11.2 研究的目的和意義11.3 本文的主要工作31.4 論文組織4第二章 相關技術和方法研究52.1 軟件開發(fā)方法簡述52.1.1 結(jié)構(gòu)化程序設計方法52.1.2 面向?qū)ο蟮拈_發(fā)方法52.2管理信息系統(tǒng)模式概述62.2.1 C/S模式72.2.2 B/S平臺模式82.3. NET技術概述92.3.1 .NET Framework102.3.2 公共語

14、言運行庫112.3.3 .NET Framework 類庫112.3.4 ASP.NET 簡介122.3.5 ADO. NET 簡介13第三章 系統(tǒng)需求分析163.1 系統(tǒng)數(shù)據(jù)需求分析163.2系統(tǒng)功能需求分析17第四章 系統(tǒng)設計194.1 數(shù)據(jù)庫設計概述194.1.1 數(shù)據(jù)庫分析和設計194.1.2 數(shù)據(jù)庫邏輯設計204.2 系統(tǒng)功能模塊設計22第五章 系統(tǒng)實現(xiàn)235.1 系統(tǒng)實現(xiàn)說明235.2 登錄模塊235.3 教師管理模塊245.4 學生管理模塊255.5 課程管理模塊275.6 成績管理模塊285.7 班級管理模塊285.8系統(tǒng)部署295.8.1部署所需條件295.8.2部署方法和步

15、驟29第六章總結(jié)與展望306.1總結(jié)306.2 展望30參考文獻31致 謝32第一章 引言1.1 研究背景又到了一年一度的班級評獎評優(yōu)的時候,此時是班委和輔導員最忙的時候,學生的信息量隨著大學的繁榮成倍增長,這個時候大家都很頭疼,數(shù)據(jù)很混亂卻一點都不公正,學生管理工作是學校各項工作的一個重要部分,其管理水平的高低直接影響到人才培養(yǎng)的質(zhì)量,面對龐大的信息量,如何有效的提高學生管理工作的效率是一個班委組織急需解決的問題。 但是,由于各方面的原因,到目前為止還沒有一個用于班級管理的信息系統(tǒng),以至于數(shù)據(jù)很混亂,評獎評優(yōu)搞得很頭疼又不公正不公開。所以,利用數(shù)據(jù)庫開發(fā)一個適合班級需要的學生信息管理系統(tǒng),可

16、以做到信息的規(guī)范管理、科學統(tǒng)計和快速查詢,并減少管理方面的工作量。 管理系統(tǒng)是進行信息的采集、存儲、加工、維護和使用的系統(tǒng),它是隨著管理科學和技術科學的發(fā)展而形成的。班級管理系統(tǒng)是一個教育單位不可缺少的一部分,它的內(nèi)容對于學校的決策者和管理者來說都至關重要,所以班級管理系統(tǒng)能為用戶提供充足的管理手段,對學生來說可以輕松的查閱自己在校的成績及排名。班級管理系統(tǒng)提供了強大的學生管理功能,方便系統(tǒng)管理員對學生成績等信息的添加、修改、刪除、查詢等操作。 每學期考試結(jié)束后,教務工作人員的工作很繁忙,這就要求本班級管理系統(tǒng)對數(shù)據(jù)的輸入要簡要而且高效,所以系統(tǒng)中有方便的數(shù)據(jù)查詢和瀏覽。整個系統(tǒng)有嚴密的權(quán)限管

17、理;增強了系統(tǒng)數(shù)據(jù)的安全性;刪除修改數(shù)據(jù)方便快捷,并且能夠保持一定的安全;完善的數(shù)據(jù)出錯處理,減少了用戶使用中的麻煩。 傳統(tǒng)的管理模式下,學校需要使用文件記錄學生的信息,這種模式只能適合以前規(guī)模較小的學校,但是隨著信息化時代的到來,信息量的增大,這種管理模式不僅需要大量的管理人員,而且不便于管理,學生信息的動態(tài)化需要一種能夠及時更新信息的管理,這在傳統(tǒng)的管理模式下很難實現(xiàn)。因此,開發(fā)網(wǎng)上學生信息管理模式勢在必行。1.2 研究的目的和意義隨著高校擴招計劃的進一步實施,大學規(guī)模越來越大,班級越來越多,事務管理越來越復雜,這就需要一個班級管理系統(tǒng),我們可以隨時得到班級的一些相關信息,比如:班級成員個

18、人情況的查詢分析(成績分析、獲獎情況、選課情況等等)、班級集體情況查詢分析(總體成績分析、獲獎情況、成員任職情況等等)。 另外,該系統(tǒng)設有管理員,管理員對班級總體情況進行統(tǒng)一管理,可以對班級同學進行授權(quán)(即普通用戶)、收回權(quán)限以及增刪改等相關信息。 最后,我們還要考慮到對數(shù)據(jù)庫的綜合管理和維護,主要包括對數(shù)據(jù)庫的備份、恢復數(shù)據(jù)庫、數(shù)據(jù)安全性和查看數(shù)據(jù)庫日志的操作。 班級管理系統(tǒng)是為了方便班委管理學生成績而開發(fā)的一種軟件系統(tǒng)。該軟件使學習成績管理工作進入一種計算機處理時代。為的是方便學生查詢自己的信息,提高工作效率,及時有效地更新學生的最新情況,提供可靠的數(shù)據(jù)存檔。 老師要求的作業(yè),鞏固提高學生

19、的軟件工程方面的知識。 我們的生活應該是信息化的時代,應該是電子化的時代,學生自己創(chuàng)建一個管理系統(tǒng)的文檔,可以方便學生更多的了解現(xiàn)代社會最應該開發(fā)和應用的管理系統(tǒng)是什么,更好的鍛煉我們自己成為一個好的管理者。 每個學期完成了以后,學生不再因查詢自己的學期成績而發(fā)愁,只需要進入自己的班級管理系統(tǒng),登錄自己的學號,就可以輕松查詢自己的期末成績,了解自己的日常學習狀況,更好的完善、規(guī)范自己。本文的班級管理系統(tǒng)課題產(chǎn)生的背景是當今教育信息化的趨勢及我國高校教育信息化系統(tǒng)的建設,目的是充分利用學?,F(xiàn)有的計算機軟、硬件資源和網(wǎng)絡資源實現(xiàn)無紙化管理以避免傳統(tǒng)手工管理的不足。與傳統(tǒng)管理模式相比,網(wǎng)上管理滲入了

20、更多的技術環(huán)節(jié),對實現(xiàn)安全性的途徑、方法也提出了更高的技術要求。通過Internet/Intranet來實現(xiàn)網(wǎng)上管理,是現(xiàn)代教育技術的一個具體實現(xiàn),具有很重要的現(xiàn)實意義。目前,面向Web應用系統(tǒng)開發(fā)的技術發(fā)展迅速,新技術不斷涌現(xiàn)。如何設計班級管理系統(tǒng),采用何種技術來實現(xiàn)班級管理系統(tǒng),提高系統(tǒng)的處理能力,成為一個值得深思的問題。在服務器端,當前正在廣泛被使用的技術有CGI、ASP、PHP、JSP、Java Servlet等;而在客戶端,則包括VBScript、JavaScript、Java Applet等。這些技術為Web應用系統(tǒng)的開發(fā)提供了堅實的基礎。從總體上來說,這些技術在開發(fā)效率、運行速度

21、、分布式事務處理以及可擴展能力等方面,具有各自的優(yōu)勢,這就要求開發(fā)人員在開發(fā)過程中依據(jù)具體要求靈活選用。在一般情況下,一個實際的Web應用系統(tǒng)是由多個開發(fā)人員,依據(jù)各自的任務,采用不同的技術進行協(xié)同開發(fā)而成。但是,在目前的許多實際項目的開發(fā)過程中,由于缺乏一個規(guī)范的編程開發(fā)模式,各部分開發(fā)人員之間缺乏充分的交流而導致出現(xiàn)互相影響、互相制約的局面,造成系統(tǒng)開發(fā)、集成與維護的成本的上升。因此,為Web應用系統(tǒng)的開發(fā)引入一套規(guī)范、合理、有效的開發(fā)模式就顯得尤為重要了。而MVC(Model View Controller)模式憑借其具有的模型和顯示分離、由控制器進行流程控制等優(yōu)勢,符合了當前Web應用

22、系統(tǒng)開發(fā)的基本要求,己逐漸成為開發(fā)Web應用系統(tǒng)的主流模式。針對上述問題,集軟件復用、分布式對象計算、企業(yè)級應用開發(fā)等技術為一體的“基于構(gòu)件的軟件開發(fā)”應運而生,這種技術以軟件框架為組裝藍圖,以可復用軟件構(gòu)件為組裝模塊,支持組裝式軟件的復用,大大提高了軟件生產(chǎn)效率和軟件質(zhì)量。國內(nèi)外對于這一技術的研究正在不斷深入,大型的軟件公司(例如Sun, Microsoft)及軟件組織機構(gòu)(OMG)都推出了支持分布式計算的平臺規(guī)范。同時,人們越來越認識到設計模式可重用的設計思想,軟件設計過程中的重要作用。各種分布式計算平臺不僅本身大量使用了設計模式,還催生了許多基于特定平臺構(gòu)建應用系統(tǒng)的設計模式。在Web應

23、用發(fā)展的早期,由于可選開發(fā)技術的相對缺乏,人們更多的是從方法學和軟件工程的角度構(gòu)建相應的Web應用模型。在隨后的發(fā)展中,進一步提出了Web應用中的抽象和復用機制。所有這些在Web應用研究方面都做出了很大貢獻,為Web應用開發(fā)提供了抽象的概念模型,然而,隨著網(wǎng)絡技術的發(fā)展和新技術的不斷出現(xiàn),需要有一套有效的設計開發(fā)模型指導Web應用的開發(fā),同時能夠滿足業(yè)務需求不斷變化的企業(yè)應用的需要,使企業(yè)Web應用系統(tǒng)具備良好地可伸縮性、可擴展性和安全性等。1.3 本文的主要工作本文以所要開發(fā)的班級管理系統(tǒng)為切入點,系統(tǒng)地研究高校班級管理系統(tǒng)所要處理的事件和所要具備的功能,分析各功能模塊的內(nèi)部結(jié)構(gòu)和模塊之間的

24、關系,設計各功能模塊的工作流程,部分實現(xiàn)各功能模塊的管理功能。本文緊扣高校學生管理實際特點和昭通學院升本的需求,其功能設置符合云南高校特點,并能為云南高校學生管理信息化建設提供參考和借鑒。1.4 論文組織本文共分為六章:第一章是本文的緒論。這一章節(jié)對本文研究的背景、現(xiàn)狀以及主要研究內(nèi)容進行了闡述。第二章是本文的相關技術基礎。這一章介紹了Web管理系統(tǒng)開發(fā)技術及理論基礎,對基于用例的軟件建模方法、.NET技術開發(fā)WEB系統(tǒng)的分層模型、ADO.NET技術分析研究。這些基礎知識將為下一步的分析設計奠定技術基礎。第三章是班級管理系統(tǒng)的設計。本章節(jié)針對業(yè)務需求,對班級管理系統(tǒng)進行詳細的闡述。文中重點對系

25、統(tǒng)的數(shù)據(jù)需求及功能需求進行了分析,為下一步班級管理系統(tǒng)的設計奠定下基礎。第四章是班級管理系統(tǒng)的數(shù)據(jù)庫設計和創(chuàng)建。基于前兩章的內(nèi)容對班級管理系統(tǒng)的數(shù)據(jù)庫進行設計。第五章是班級管理系統(tǒng)的實現(xiàn)部分。依照第三章、第四章的設計方案,本章介紹了實現(xiàn)班級管理系統(tǒng)的核心步驟,并展示了系統(tǒng)的運行效果。第六章是本文的結(jié)論部分。本章對論文的研究成果進行了自我總結(jié)和評價,提出了將來的工作展望。最后,列出本論文撰寫過程中所參閱的參考文獻。第二章 相關技術和方法研究2.1 軟件開發(fā)方法簡述從結(jié)構(gòu)化程序設計語言到面向?qū)ο蟪绦蛟O計語言,人們一直在尋求解決軟件復用和維護的更好的軟件編寫模式。結(jié)構(gòu)化程序設計通過編寫能重復調(diào)用的子

26、程序減少了代碼的編寫量,經(jīng)過測試的子程序,降低維護難度。但這種程序設計方法,可復用的模塊小,數(shù)量大,耦合關系復雜,當程序代碼量達到一定程度后,維護變得很困難。面向?qū)ο蟮某绦蛟O計語言,以更符合客觀世界的實體對象的概念,提供了封裝性、繼承性和多態(tài)性,將軟件的可復用性和維護性向前邁進了一大步。2.1.1 結(jié)構(gòu)化程序設計方法20 世紀70 年代,結(jié)構(gòu)化開發(fā)方法是早期使用比較廣泛的軟件開發(fā)方法,由于它具有很多的優(yōu)點,出現(xiàn)之后沒幾年就占據(jù)了軟件開發(fā)的主流。結(jié)構(gòu)化編程中的“自頂向下,逐步求精”的“功能分解法”,是一種很重要的軟件開發(fā)方法,其本質(zhì)是一種“分而治之”的思維方式,在面向?qū)ο蟮某绦蛑幸灿袕V泛的應用。

27、這種方法不僅開發(fā)步驟明確,分析階段( SA)、設計階段(SD)和編程階段(SP)相輔相成,而且給出了兩類典型的軟件結(jié)構(gòu)(變換型和事務型),便于參照,使軟件開發(fā)的成功率大大提高。但這種開發(fā)方法也存在很多缺點和不足,只著眼于局部的程序結(jié)構(gòu),不考慮程序的輸入、輸出數(shù)據(jù)結(jié)構(gòu)對程序結(jié)構(gòu)的影響,各子部分之間的連接也比較困難,因此這種方法有以下缺點:(1)不適合規(guī)模大、復雜的項目;(2)難以解決軟件重用問題;(3)難以適應需求變化,難以解決系統(tǒng)維護問題;(4) 由于傳統(tǒng)的開發(fā)模式是面向過程的,因此數(shù)據(jù)和方法是分開的,容易產(chǎn)生問題空間和方法空間在結(jié)構(gòu)上的不一致錯誤1。因此要想使開發(fā)的項目具有良好的穩(wěn)定性和可擴

28、展性,使用面向?qū)ο蟮拈_發(fā)方法是目前較好的選擇,面向?qū)ο蠹夹g經(jīng)過多年的研究實踐,已經(jīng)成為一種成熟有效的開發(fā)方法。2.1.2 面向?qū)ο蟮拈_發(fā)方法面向?qū)ο蟮姆椒ㄊ且环N分析方法、設計方法和思維方法2。面向?qū)ο蠓椒ň褪前芽陀^世界的事務抽象為對象的形式化方法,通過這種方法提供一種用戶自定義數(shù)據(jù)類型的途徑。它是利用面向?qū)ο蟮男畔⒔8拍钊珙悺㈥P系、屬性等以及封裝、繼承、多態(tài)等機制來構(gòu)造、模擬顯示系統(tǒng)的方法。對象封裝了客觀世界中實體的屬性和行為,類是同一類對象公共屬性和行為的抽象,因此對象是它所屬類的一個實例。面向?qū)ο蠓椒ò严到y(tǒng)按邏輯分離成能完成特定任務的對象,封裝性、抽象性、繼承性和多態(tài)性是面向?qū)ο箝_發(fā)方法

29、的特點3:(1)對象的封裝性:保護了對象的數(shù)據(jù)不會被別的對象惡意或無意修改,對數(shù)據(jù)安全性提供了底層的保障,當需求改變時,可以擴展模塊。封裝這一特性不僅大大提高了代碼的易用性,而且還使得類的開發(fā)者可以方便的更換新的算法,且不會影響類的外部代碼。(2)抽象性:在使用面向?qū)ο蟮姆椒ㄔO計一個軟件系統(tǒng)時,首先就要區(qū)分出現(xiàn)實世界中的事物所屬的類型,分析它們擁有哪些性質(zhì)與功能,再將它們抽象為在計算機虛擬世界中才有意義的實體類;在程序運行時,由類創(chuàng)建出對象,用對象之間的相互合作關系來模擬真實世界中事物的相互關聯(lián)。(3)類的繼承性:繼承性提供了代碼的可重用性,對于以前設計的具有類似功能的類,可在不改變原有代碼的

30、基礎上,在繼承后的子類代碼中對原有的特征進行屏蔽和擴充,因而使得原有代碼在很大程度上總是可重用的。(4)多態(tài)性:在現(xiàn)實生活中,可以用一個比較抽象的事物來取代具體的事物,在面向?qū)ο筌浖杏谩岸鄳B(tài)性”這一特性來模擬。子類在繼承的時候可以用自己定義的一些數(shù)據(jù)和方法取代父類原有的數(shù)據(jù)和方法,這就提供了一種在運行時通過一個匹配的接口用一個對象去替代另一個對象的能力,也就是說可以給一組共享相同行為和屬性的對象一個公共的描述。因此可以說面向?qū)ο蠹夹g的繼承性和封裝性也支持軟件的可重用性,能較好的適應復雜系統(tǒng)不斷發(fā)展和變化的要求。這種方法的基本思想就是盡量重用現(xiàn)有的成果,從而提高開發(fā)質(zhì)量和效果。面向?qū)ο蟮乃拇筇?/p>

31、性并不是彼此獨立的,“抽象”和“封裝”更多體現(xiàn)為一種思維方法,主要體現(xiàn)在面向?qū)ο笙到y(tǒng)的總體分析和設計中;“繼承”和“多態(tài)”則多應用于具體子系統(tǒng)和軟件模塊的設計與編碼過程中,而且“繼承”是“多態(tài)”的基礎。由此可見,面向?qū)ο笤O計方法具有模塊化、信息封裝與抽象、繼承、多態(tài)等特點,它解決了系統(tǒng)設計與管理中所需的軟件可靠性、可重用性、可擴充性、可維護性及提高了開發(fā)效率等問題。2.2 管理班級系統(tǒng)模式概述班級管理系統(tǒng)模式大體上分為四種:主機終端模式、文件服務器模式、客戶機/服務器模式(Client/Server,簡稱C/S)和瀏覽器/服務器模式(Browser/Server,簡稱B/S)。主機終端模式由于

32、硬件選擇有限,應用領域越來越窄。而文件服務器模式只適用小規(guī)模的局域網(wǎng),在用戶多、數(shù)據(jù)量大的情況下會產(chǎn)生網(wǎng)絡瓶頸,特別是不能滿足互聯(lián)網(wǎng)上用戶的要求。因此,現(xiàn)代企業(yè)管理系統(tǒng)平臺模式主要考慮C/S模式和B/S模式及其綜合應用。2.2.1 C/S模式C/S模式的模型是一個分布式系統(tǒng)模型。在這種結(jié)構(gòu)中,應用程序通常分為兩大部分:客戶機部分和服務器部分??蛻魴C部分負責執(zhí)行前臺功能;服務器部分執(zhí)行后臺服務。C/S應用系統(tǒng)基本運行模式體現(xiàn)為:“請求/響應”的應答模式。每當用戶需要訪問服務器時就由客戶機發(fā)出“請求”,服務器接受“請求”并“響應”,然后執(zhí)行相應的服務,將執(zhí)行結(jié)果送回給客戶機,由客戶機進一步處理后再

33、提交給用戶。下圖是C/S模式的體系結(jié)構(gòu)圖4。圖2-1 C/S模式的體系結(jié)構(gòu)該結(jié)構(gòu)在近十年的應用中得到了廣泛發(fā)展,并獲得很大成功,然而隨著應用需求的提高以及技術的發(fā)展,該結(jié)構(gòu)的局限性也逐漸暴露4:1. 兩層C/S結(jié)構(gòu)中,由于多數(shù)業(yè)務邏輯部署于客戶機,因此客戶端需要安裝大量的軟件,機器需要較高的配置,客戶端應用程序的分發(fā)工作與維護工作十分煩瑣,軟件更新時需要逐一對各客戶機進行操作,而且用戶需要進行專門的培訓才可以進行操作,使系統(tǒng)的運行成本一直呈上升的趨勢,從某種程度上限制了網(wǎng)絡的應用范圍;2. 若將部分業(yè)務邏輯部署于數(shù)據(jù)庫層,以存儲過程的方式調(diào)用時,這樣很難將其移植到其他的數(shù)據(jù)庫管理系統(tǒng)上去,降低

34、了代碼的重用性;3. 不同系統(tǒng)的操作界面差異較大,用戶不易在短期內(nèi)很好地掌握系統(tǒng);4. 由于客戶端和服務器端直接相連,數(shù)據(jù)庫服務器不得不消耗部分資源用于處理與客戶端的連接工作。這樣,當同時存在大量客戶端數(shù)據(jù)請求時,服務器的系統(tǒng)資源可能在應付頻繁的連接工作上消耗,從而不能很好的響應數(shù)據(jù)請求,可能導致系統(tǒng)整體效率的大幅降低甚至系統(tǒng)崩潰:5. 基于傳統(tǒng)C/S模式開發(fā)的軟件需要針對不同的操作系統(tǒng)而開發(fā)不同版本的軟件。產(chǎn)品頻繁地更新?lián)Q代,造成了基于C/S模式開發(fā)的軟件成本高且低效率。這種狀況使得C/S的結(jié)構(gòu)已無法適應分布式應用系統(tǒng)發(fā)展的需要。2.2.2 B/S平臺模式B/S平臺模式是一種新型的軟件架構(gòu),

35、是由傳統(tǒng)的兩層C/S平臺模式發(fā)展而來的多層C/S平臺模式在Web上的應用。B/S平臺模式把C/S平臺模式的客戶業(yè)務邏輯模塊從客戶機的任務中分離出來,由單獨的一層或者多層來處理,把任務均衡地分配給了Web服務器。同時,客戶機把業(yè)務邏輯部分給服務器,不再負責處理復雜計算和數(shù)據(jù)訪問等關鍵事務,只負責顯示部分。下圖是B/S模式的體系結(jié)構(gòu)圖5。圖2-2 B/S模式的體系結(jié)構(gòu)在該結(jié)構(gòu)中,用戶可以通過瀏覽器向分布在網(wǎng)絡上的許多服務器發(fā)出請求,而且極大地簡化了客戶機的工作,在客戶機上只需安裝、配置少量的客戶端軟件,服務器將負擔更多的工作,對數(shù)據(jù)庫的訪問和應用程序的執(zhí)行將在服務器上完成。與兩層C/S模式相比,B

36、/S模式在許多方面體現(xiàn)了很大的優(yōu)勢,主要體現(xiàn)在以下幾個方面5:1. 開發(fā)和維護成本:C/S開發(fā)和維護成本較高,對不同的客戶端要開發(fā)不同的程序,編程工作量大。對于B/S,只需在客戶端安裝通用的瀏覽器,所有的維護和升級工作都是在服務器上執(zhí)行的,不需對客戶端進行任何改變,故而大大降低了開發(fā)和維護成本;2. 采用的標準:C/S所采用的標準只在內(nèi)部統(tǒng)一,其應用通常是專用的,而B/S所采用的標準是開放的、非專用的,保證了其應用的通用性和跨平臺性;3. 客戶端任務:C/S的客戶端具有顯示和處理數(shù)據(jù)的功能,任務過重。B/S的客戶端把業(yè)務邏輯部分分給了服務器,不再負責處理復雜計算和數(shù)據(jù)訪問等關鍵事務,只負責顯示

37、部分,任務大大減輕;4. 用戶界面風格:C/S用戶的界面由客戶端應用程序決定,用戶界面各不相同。B/S只需在客戶端安裝通用的瀏覽器就可以訪問應用程序,瀏覽器的界面統(tǒng)一友好、易于使用。5. 靈活性:C/S系統(tǒng)模塊中每一部分的變動均要影響到其它模塊的變動,系統(tǒng)升級困難,靈活性差。B/S各層之間相互獨立,任何一層的改變不影響其它層的功能,系統(tǒng)改進非常容易,靈活性好;6. 安全性:C/S系統(tǒng)中的客戶端直接與服務器相連,非法用戶可以很容易地通過應用程序侵入系統(tǒng),并對服務器數(shù)據(jù)庫進行操作,這給系統(tǒng)的安全性帶來極大的隱患。B/S系統(tǒng)在客戶機和服務器之間增加了一層或多層Web服務器,使兩者不直接相連,客戶機無

38、法直接對數(shù)據(jù)庫操作,可有效地防止用戶的非法入侵;7. 移植性:C/S系統(tǒng)中,不同的系統(tǒng)通常由不同的工具開發(fā),一般來說它們之間互不兼容,難以移植到其它平臺上運行,移植性差,而B/S系統(tǒng)在客戶端安裝的是通用瀏覽器,不存在移植性問題,即使是服務器端的程序,因遵循開放的標準,所以向其他的平臺移植也非常方便。B/S平臺模式相對于傳統(tǒng)的兩層C/S平臺模式在多方面都有著十分明顯的優(yōu)勢。因此,B/S平臺模式正是當前構(gòu)建復雜企業(yè)級應用的一個趨勢。2.3 . NET技術概述Microsoft首席執(zhí)行官鮑爾默說:“Microsoft.NET代表了一個集合、一個環(huán)境、一個可以作 為平臺支持下一代Internet 的可

39、編程結(jié)構(gòu)”,這句話簡明扼要地表述了NET 環(huán)境特別適合于開發(fā)Internet 應用程序。Microsoft 的構(gòu)思是一個“不再關注單個網(wǎng)站、單個設備與Internet 相連的Internat 環(huán)境,而是要讓所有的計算機群、相關設備和服務商協(xié)同工作”的網(wǎng)絡計算環(huán)境10。簡單的說,.NET 是微軟針對未來互聯(lián)網(wǎng)推出的一個設計架構(gòu),在這個架構(gòu)中,微軟的所有產(chǎn)品和應用都將以網(wǎng)絡為中心成為在這個架構(gòu)規(guī)范下的一個部分,這些產(chǎn)品和應用包括我們常用的服務器、設計工具甚至連接應用規(guī)范。未來的Internet ,應該以一個個體服務的形式展現(xiàn)在最終用戶面前,用戶只需知道自己想要什么,而不需要什么,一步步在網(wǎng)上搜索、

40、操作。用戶只需發(fā)出請求,然后只管接收就是了。所有的后臺的復雜性完全屏蔽起來,.NET 是一種面向網(wǎng)絡,支持各種用戶終端的開發(fā)平臺環(huán)境。.NET 徹底地把計算模式從單機、客戶機服務器和Web 網(wǎng)站的方式轉(zhuǎn)向分布式計算( Distributed Computing ) 11。計算模型CORBA 和COM 都存在“局部計算”的特點,都僅僅是本地或本網(wǎng)計算的模式,而不能把整個Internet 當作一個計算資源體系來加以利用。顯而易見,這是一個龐大的復雜的工程,我們可以將這個框架理解為微軟根據(jù)業(yè)界標準和自己主導的一些規(guī)范而設立的一個“大家庭”,在這個大家庭中,微軟今后的產(chǎn)品、產(chǎn)品相互之間的交互等都按照一

41、定規(guī)范進行。微軟這些規(guī)范的形成,有自己主導提倡的一些標準,比如XML 、SOAP 等。NET 則通過一種稱作Web 服務的技術把分布在Internet上的各種資源有效的通過編程手段整合在特定的應用界面中。.NET 中引入了一系列的新概念,通用語言運行庫(Common Language Runtime )使得NET 具有跨語言集成的特性;MetaData 使得NET 組件是自描述的;Assembly 簡化了應用程序的配置和部署。同時.NET 采用了多種安全策略,內(nèi)置多種身份認證模式,使得系統(tǒng)具有很高的安全特性。總的說來,.NET 框架實現(xiàn)了語言開發(fā)、代碼編譯、組件配置、程序運行、對象交互等各個層

42、面的功能,為Web服務及普及應用程序提供了一個托管、安全、高效的執(zhí)行環(huán)境。.NET 由五部分組成12:(1).NET 開發(fā)平臺:這是一組用于建立web 服務應用程序和Windows 桌面應用程序的軟件組件,包括.NET Froework 、NET 開發(fā)工具(Visual studio . NET )和ASP.NET 。(2).NET 服務器:能夠提供廣泛聚合和集成Web 服務的服務器,是搭建.NET 平臺的后端基礎。(3).NET 基礎服務:密碼認證、日歷、文件存儲和用戶信息等基礎服務是必不可少的。微軟正在著力建設的.NET My Service 等基礎性服務是這方面可以借鑒的例子。(4).N

43、ET 終端設備:廣泛的連接互聯(lián)網(wǎng)并體驗Web 服務的終端設備是實現(xiàn).NET 的前端基礎。PC 、PAD 以及各種嵌入式設備將在這個廣闊的天地里發(fā)揮作用。(5).NET 用戶體驗:能夠滿足人們各種各樣需求的用戶體驗是NET 的最終目標,也是.NET 的價值實現(xiàn)。其中.NET Framework 是.NET 軟件構(gòu)造中的核心部分,是.NET 最重要的基礎構(gòu)架,它提供了創(chuàng)建、部署和運行.NET應用的環(huán)境,其它四部分則緊緊圍繞.NET Framework 來組織整合13。2.3.1 .NET Framework.NET Framework 是微軟公司推出的一個新的計算平臺,它包含了操作系統(tǒng)上軟件開發(fā)的

44、所有層,提供微軟平臺上所見過的所有組件技術、呈現(xiàn)技術和數(shù)據(jù)技術的最豐富的繼承級別,徹底地把計算模式從單機、客戶機服務器和Web 網(wǎng)站的方式轉(zhuǎn)型分布式模式14。利用NET 開發(fā)平臺,可以更方便的開發(fā)企業(yè)級應用系統(tǒng)架構(gòu)15。用于.NET平臺的編程模型,輔以其它各種技術實現(xiàn)。意在利用Internet上強大的計算資源和豐富的帶寬資源提高工作效率。.NET 框架旨在實現(xiàn)下列目標16:(1)無論對象代碼是在本地存儲和執(zhí)行,還是在本地執(zhí)行但在Internet上分布,或者是在遠程執(zhí)行,.NETFramework都提供一個一致的面向?qū)ο蟮木幊汰h(huán)境。(2)提供一個將軟件部署和版本控制沖突最小化的代碼執(zhí)行環(huán)境。(3

45、)提供一個保證代碼(包括由未知的或不完全受信任的第三方創(chuàng)建的代碼)安全執(zhí)行的代碼執(zhí)行環(huán)境。(4)提供一個可消除腳本環(huán)境或解釋環(huán)境性能問題的代碼執(zhí)行環(huán)境。(5)使開發(fā)人員的經(jīng)驗在面對類型大不相同的應用程序(如基于Windows的應用程序和基于Web 的應用程序)時保持一致。(6)按照工業(yè)標準生成所有通信,以確?;?NET框架的代碼可與任何其它代碼集成。.NET Framework包含兩個關鍵組件:公共語言運行庫(Common Language Runtime , CLR)和Framework類庫(包含ASP.NET,Enterprise服務,ADO.NET 和WindowsForm ) 17。

46、NET Framework 提供了托管執(zhí)行環(huán)境、簡化的開發(fā)和部署以及與各種編程語言的集成。.NET Framework 的層次結(jié)構(gòu)如圖2-1 所示17:圖2-3 .NET Framework 的層次結(jié)構(gòu)2.3.3 .NET Framework 類庫.NET Framework類庫是.NET框架中的實體。.NET類庫又稱為基礎類庫(Base Class Library),提供標準的功能,如輸入輸出、字符串操作、安全管理、網(wǎng)絡通信、用戶界面設計等底層功能18。其它所有的類庫都建立在這個基本類庫之上。ADO.NET 數(shù)據(jù)訪問類支持持續(xù)的數(shù)據(jù)管理,它包括SQL 類,可通過標準的SQL 接口進行持續(xù)的數(shù)

47、據(jù)存儲操作。XML 類可以實現(xiàn)XML數(shù)據(jù)操作和XML搜索和轉(zhuǎn)換。ASP.NET 類支持Web Forms應用程序和Web service的開發(fā)。Windows Forms類支持給予Windows 的智能客戶端應用程序的開發(fā)。所有這些類庫合在一起,提供一個跨所有.NET Framework 所支持語言的公共、一致可開發(fā)接口,并且采用清晰而有條理的方式對類庫進行分組和描述,這樣開發(fā)者能更容易地找到應用程序所需的大多數(shù)功能。.NET Framework支持多種編程語言,并在一個應用程序中可以使用不同的語言。程序員可以使用一種或多種.NET編程語言,如微軟自己的VB.NET 、C+、C#和Jscrip

48、t.NET 等。大量其它的.NET編程語言可以從第三方廠商獲得。2.3.4 ASP.NET 簡介ASP 的出現(xiàn)使得網(wǎng)絡應用程序開發(fā)變得相當容易,但由于它是通過解釋執(zhí)行的,而且腳本程序和靜態(tài)網(wǎng)頁混合在一起,所以在程序的執(zhí)行速度和程序的可移植性上都存在一些問題,出于這樣的原因,微軟于2002 年正式推出了ASP.NET。ASP.NET并不是簡單的ASP的升級版本,它緊緊依賴與.NET 框架的所有東西,真正從底層被創(chuàng)建,是一種徹底不同的代碼,是在CLR和XML的基礎上,以及在所有其它.NET基礎上創(chuàng)建的。ASP.NET是.NET開發(fā)平臺的一個部件,用來開發(fā)駐留在微軟IIS上并使用諸如HTTP和SOA

49、P等Internet協(xié)議的Web應用程序。這種Web 應用程序有兩種基本類型,即Web Form應用程序和Webservice 。ASP.NET可用于創(chuàng)建功能強大的Web應用程序。與其它Web開發(fā)模型相比,ASP.NET 具有如下重要特色19:(1)網(wǎng)頁內(nèi)容與代碼程序相分離把網(wǎng)頁內(nèi)容與代碼程序相分離,這樣使得頁面的設計和后臺的邏輯程序分別放在不同的兩個文件中,如果修改頁面設計,則程序代碼無需改動,大大方便了設計人員和程序員的分工工作。(2)多語言支持可以使用CLR 支持的任何編程語言進行開發(fā),例如現(xiàn)階段支持的完全面向?qū)ο蟮某绦蛘Z言VB.NET 、C#等。其中,C#是微軟為NET平臺量身定做的新

50、程序語言,擁有如VB一樣的簡單易用性,同時具備C+的強大功能。(3)執(zhí)行效率更高ASP.NET 不再采用解釋型的腳本語言,而是采用編譯型的語言,ASP.NET 頁面在第一次被調(diào)用時會被編譯,然后緩沖(Cache)在內(nèi)存中,所以只有在第一次被調(diào)用時速度較慢,隨后的調(diào)用則不必進行編譯,而是直接執(zhí)行內(nèi)存中的版本,執(zhí)行速度加快了許多。(4)面向?qū)ο蟮奶匦猿顺绦蛟O計語言都是面向?qū)ο蟮闹?,ASP.NET 中所有的東西都是對象,從變量、服務器端控件到網(wǎng)頁,都可以以對象的方式對它們進行處理。采用面向?qū)ο蟮臋C制,就是要用到對象的屬性(Property)、方法(Method 和事件(Event),而采用“事件

51、驅(qū)動”編程使ASP.NET 的編程更接近于Windows 編程,程序編寫更簡單,更直觀。(5)運行于.NET 平臺通過在.NET 開發(fā)平臺中嵌入ASP.NET ,微軟將CLR和類庫的益處提供給開發(fā)者。ASP.NET使用CLR來編譯代碼,管理執(zhí)行,創(chuàng)造運行更快、表現(xiàn)更好的Web應用程序。此外,ASP.NET使用類庫讓開發(fā)者更易于將XML格式數(shù)據(jù)合并到Web應用程序中,添加處理異常的代碼,創(chuàng)建UI元素,并提供其它的編程功能。2.3.5 ADO. NET 簡介ADO.NET的名稱起源于ADO(ActiveX Data Objects),只要在應用程序中使用數(shù)據(jù)庫就不可避免使用ADO.NET。ADO.

52、NET 技術是一種全新的、完全與數(shù)據(jù)源無關的數(shù)據(jù)訪問技術,它不是簡單的ADO技術的升級,而是提供了基于.NET平臺的全新的數(shù)據(jù)訪問方式,設計ADO.NET組件的目的是負責將數(shù)據(jù)庫中的數(shù)據(jù)公開給業(yè)務邏輯層20。n ADO.NET 新特性數(shù)據(jù)訪問是程序中應用最普遍的部分,隨著C#和ADO.NET 的引入,這種操作變得更簡單。微軟在開發(fā).NET的同時,對數(shù)據(jù)訪問模型進行了升級,把原來的ADO 模型升級為全新的ADO.NET 數(shù)據(jù)源。原來最重要的Recordset被Dataset和DataReader完全取代了,也不再像原來Recordset那樣一次只能讀取一條記錄,而是讀取整個數(shù)據(jù)庫,然后在內(nèi)存中建

53、立一個影像,從而實現(xiàn)了斷開方式數(shù)據(jù)庫鏈接和內(nèi)存管理自動化,這是微軟的一個重大的技術突破。ADO.NET是由一系列的數(shù)據(jù)庫相關類和接口組成的,它的基石是XML 技術,所以通過ADO.NET我們不僅能訪問關系型數(shù)據(jù)庫中的數(shù)據(jù),而且還能訪問層次化的XML 數(shù)據(jù)。ADO.NET 為斷開式n層編程環(huán)境提供了一流的支持,許多新的應用程序都是為該環(huán)境編寫的。使用斷開式數(shù)據(jù)集這一概念已經(jīng)成為編程模型中的焦點。N層編程的ADO.NET的解決方案就是Dataset。集成支持XML和數(shù)據(jù)訪問是緊密聯(lián)系在一起的,即XML的全部內(nèi)容都是有關數(shù)據(jù)編碼的,而數(shù)據(jù)訪問越來越多的內(nèi)容都與XML 有關。.NET Framewor

54、k不僅支持Web標準,它還是完全基于Web標準生成的。n ADO.NET的對象模型ADO.NET結(jié)構(gòu)包括兩個核心組件21:數(shù)據(jù)集Dataset和.NET Framework 數(shù)據(jù)提供程序,其中數(shù)據(jù)集Dataset與數(shù)據(jù)源斷開并且不需要知道所保存數(shù)據(jù)的來源。.NET Framework是一組組件,包括Connection對象、Command對象、DataReader 對象和DataAdapter 對象4個部分。設計ADO.NET組件的目的是為了從數(shù)據(jù)操作中分解出數(shù)據(jù)訪問。(1)ADO.NET DataSet是ADO.NET的斷開式結(jié)構(gòu)的核心組件。DataSet 設計的目的是為了實現(xiàn)獨立于任何數(shù)據(jù)

55、源的數(shù)據(jù)訪問。因此,它可以用于多種不同的數(shù)據(jù)源,用于XML 數(shù)據(jù),或用于管理應用程序本地的數(shù)據(jù)。DataSet 與數(shù)據(jù)源是斷開連接的,可將DateSet視為從數(shù)據(jù)庫檢索出的數(shù)據(jù)在內(nèi)存中的緩存。DataSet 包含一個或多個DataTable對象的集合,這些集合由數(shù)據(jù)行、數(shù)據(jù)列及主鍵、外鍵、約束和有關DataTable對象中的數(shù)據(jù)的關系信息組成。( 2 ) ADO.NET 結(jié)構(gòu)的另一個核心組件是.NET Framework 數(shù)據(jù)提供程序。其設計目的是為了實現(xiàn)數(shù)據(jù)操作和對數(shù)據(jù)的快遞、只進和只讀訪問。NET Framework 數(shù)據(jù)提供程序的核心元素是Connection對象、Command 對象、

56、DataReader對象和DataAdapter 對象。其中Connection對象提供與數(shù)據(jù)源的連接;Command對象能夠訪問用于返回數(shù)據(jù),修改數(shù)據(jù),運行存儲過程以及發(fā)送或檢索參數(shù)信息的數(shù)據(jù)庫命令;DataReader從數(shù)據(jù)源中提供高性能的數(shù)據(jù)流;DataAdaPter對象提供連接DataSet 對象和數(shù)據(jù)源的橋梁。DataAdapter使用Command對象在數(shù)據(jù)源中執(zhí)行SQL命令,以便將數(shù)據(jù)加載到DataSet中,并使對DataSet中的數(shù)據(jù)的更改與數(shù)據(jù)源保持一致。如圖2-4 闡述了ADO.NET組件結(jié)構(gòu)21。圖2-4 ADO.NET組件結(jié)構(gòu)n 對數(shù)據(jù)庫的訪問過程由ADO.NET的對象

57、模型知道DataSet和DataReader是ADO.NET提供的兩個用于檢索關系型數(shù)據(jù)庫并把它存儲在內(nèi)存中的對象,使用DataSet時,一般使用DataAdapter與數(shù)據(jù)源交互,用DatView對DataSset中的數(shù)據(jù)進行排序和過濾,DataSet提供內(nèi)存中關系數(shù)據(jù)的表現(xiàn),包括表和次序、約束等表間的關系的完整數(shù)據(jù)集合,DataReader提供快速、只向前只讀的來自數(shù)據(jù)庫的數(shù)據(jù)流。如果要完成對數(shù)據(jù)庫的訪問,首先是使用Connection對象連接數(shù)據(jù)源,和數(shù)據(jù)源建立了連接后,一般使用兩種方式訪問數(shù)據(jù)庫,數(shù)據(jù)訪問過程如圖2-3所示21:圖2-5數(shù)據(jù)訪問過程一種方式是直接和數(shù)據(jù)庫連接,即使用Command對象訪問數(shù)據(jù)庫。采用這種方式是通過DataReader對象讀取數(shù)據(jù),然后利用Response.write顯示數(shù)據(jù)。這種方式的優(yōu)點是不占用額外的內(nèi)存,而且讀取速度快,但所編寫的程序代

溫馨提示

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

評論

0/150

提交評論