版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 本科畢業(yè)設計(論文)</p><p> 基于.NET的航空設計材料數(shù)據(jù)庫</p><p> 年 級: 2009級 </p><p> 學 號: ********** </p><p> 姓 名: **** </p><p> 專 業(yè): 計算機軟件
2、 </p><p> 指導老師: **** </p><p> 自己的畢業(yè)設計,都是一個字一個字自己寫的,源碼也有,想要的聯(lián)系</p><p> 453066269@qq.com</p><p><b> 二零一三年六月</b></p><p> 題 目 基
3、于.NET的航空設計材料數(shù)據(jù)庫 </p><p> 評 語 </p><p> 指導教師 (簽章)</p><p><b> 評 閱 人<
4、;/b></p><p> 評 語 </p><p> 評 閱 人 (簽章)</p><p> 成 績 </p><p>
5、; 答辯委員會主任 (簽章)</p><p> 年 月 日</p><p> 畢 業(yè) 設 計 任 務 書</p><p> 發(fā) 題 日 期: 年 月 日 完 成 日 期: 年 月 日</p><p> 題 目
6、 基于.NET的航空設計材料數(shù)據(jù)庫 </p><p> 題目類型: 工程設計 科學實驗 軟件開發(fā) 理論研究 綜合應用</p><p><b> 設計任務及要求</b></p><p> 根據(jù)需求,需要完成如下功能模塊:
7、 </p><p> 1、系統(tǒng)用戶及權限管理; </p><p> 2、材料編碼,包括根據(jù)材料基礎信息,生成材料統(tǒng)一編號及基礎信息表的管理,主要涉及材料類別、牌號、品牌、狀態(tài)、廠家及批次等; <
8、;/p><p> 3、材料管理,包括新建、刪除、導入; </p><p> 4、材料審批,在新建、導入和刪除同時發(fā)出審批的請求,審批通過執(zhí)行用戶請求;</p><p> 5、材料庫管理,根據(jù)材料的不同狀態(tài)分為參考材料、設計材料和選材范圍; </p><p>
9、 6、*第三方設計軟件調用接口WebService(此功能為擴展功能,根據(jù)完成情況而確定否完成。); </p><p> 應完成的硬件或軟件實驗</p><p> 1、.NET相關框架;
10、 </p><p> 2、Extjs框架; </p><p> 應交出的設計文件及實物(包括設計論文、程序清單或磁盤、實驗裝置或產品等)</p><p> 系統(tǒng)設計文檔、畢業(yè)設計論文、英文翻譯、程序清單、系統(tǒng)演示視
11、頻;以及設計方案,及文檔試用系統(tǒng)
12、 </p><p> 指導教師提供的設計資料</p><p> 1、初步項目設計方案 </p><p> 2、開發(fā)的環(huán)境的支撐軟件 </p>&
13、lt;p> 3、計及代碼編寫的規(guī)范,性能相關規(guī)定 </p><p> 4、相似系統(tǒng)的相關資料和文檔 </p><p> 要求學生搜集的技術資料(指出搜集資料的技術領域)</p><p> 1
14、、.NET系統(tǒng)框架的搭建 </p><p> 2、數(shù)據(jù)庫的設計 </p><p> 3、或Extjs框架的搭建
15、 </p><p> 設計進度安排 (共16周)</p><p
16、> 第一部分 明確任務,學習相關資料 ( 2 周)</p><p> 第二部分 搭建開發(fā)平臺,及項目管理平臺,完成實驗性系統(tǒng) ( 2 周)</p><p> 第三部分 制定方案及進行設計 ( 2 周)</p>
17、;<p> 第四部分 編寫代碼 ( 6 周)</p><p> 第五部分 測試 ( 2 周)</p><p> 第六部分 整理相關文檔
18、 ( 2 周)</p><p> 評閱及答辯 ( 16 周)</p><p> 指導教師: 年 月 日</p><p><b> 室主任審查意見:<
19、/b></p><p> 審 批 人: 年 月 日</p><p> 注:設計任務書審查合格后,發(fā)到學生手上。</p><p> ******大學信息學院 2010年制</p><p><b> 摘 要</b></p><p>
20、 在以往的航空設計中,設計員能夠選用的航空材料往往有嚴格的限制范圍,而且在具體選材中,多采用手工查找方式,費時費力。雖然有一些國外的商用數(shù)據(jù)庫可供使用,但由于這些材料數(shù)據(jù)庫中的具體內容沒有經過嚴格的審查,因此不能直接使用,且查詢十分不便。鑒于我國航空設計材料管理的現(xiàn)狀以及計算機技術的發(fā)展,采用數(shù)據(jù)庫技術與web技術相結合,建立基于B/S模式的航空設計材料數(shù)據(jù)庫系統(tǒng)十分可行且很有必要。</p><p> 針對以上
21、問題,論文結合航空設計材料管理的特點以及信息技術的發(fā)展狀況,分析了航空設計材料管理模式,通過對航空設計材料數(shù)據(jù)庫系統(tǒng)的需求分析,建立了航空設計材料數(shù)據(jù)庫系統(tǒng)的總體框架、體系結構及主要功能模塊。</p><p> 系統(tǒng)采用B/S三層邏輯架構,維護升級工作量小,極大降低了開發(fā)成本和后期維護成本,業(yè)務擴展簡單方便。系統(tǒng)操作界面采用Extjs4框架實現(xiàn),友好、簡單、易于操作,提供的WebService接口為第三方設計軟
22、件的調用提供便利。</p><p> 在基于WEB技術、ASP.NET,三層體系結構以及ADO.NET數(shù)據(jù)庫訪問等技術的分析比較基礎上,在.NET平臺上完成了航空設計材料數(shù)據(jù)庫系統(tǒng)的開發(fā)工作,系統(tǒng)基本實現(xiàn)了用戶及權限管理,材料編碼,材料審批,材料管理,材料庫管理等模塊,能夠完成航空設計材料的管理,能夠為航空設計工作做好準備。</p><p> 本系統(tǒng)將WEB技術、數(shù)據(jù)庫技術、航空設計材
23、料數(shù)據(jù)管理相結合,系統(tǒng)從具體的航空設計材料管理工作出發(fā),具有較好的應用意義和使用價值。</p><p> 關鍵詞: 航空設計材料; 數(shù)據(jù)庫; .NET; 材料管理</p><p><b> Abstract</b></p><p> In previous aerospace design, the aeronautical materi
24、als from which designers could choose are strictly limited. Besides, designers used to select specific material in a manual way which was time-consuming and laborious. Though there are some available foreign commercial d
25、atabases, the detailed contents have not been strictly examined. Therefore, they can’t be used directly. Besides, the query of these databases is not convenient at all. In the light of current station of the aerospace ma
26、terial </p><p> To solve the problems mentioned above, the paper take consider of the characteristics of aerospace material design and the development of information technology, and analyze the mode of the
27、management of aerospace material design. By analyze the requirement of aerospace material design the frame work, system structure and main function modules of aerospace material design database system are built.</p>
28、;<p> The system uses B/S three-tier logical structure and the workload of maintenance of system upgrade is small, which greatly reduced the development cost and maintenance cost, and work expansion is easy. The
29、system interface is Extjs 4, which is easy and user-friendly. The WebService interface provides convenience for the use of third-party design software.</p><p> Based on the contradistinction of WEB technol
30、ogy, ASP.NET,three-tier structure and ADO.NET database system, the paper accomplishes the development of aerospace material design in the NET platform. This system accomplish the users and privilege management, material
31、codes, material management, material library management. So it’s capable of the management aerospace material design and prepare for the aerospace design.</p><p> The system combines WEB technology, databas
32、e technology, aerospace material management, it begins from specific aerospace material design management and is of good application significance and use value.</p><p> Key words: Aviation Design Materials
33、; Database; .NET; Materials Management</p><p><b> 目 錄</b></p><p><b> 摘 要IV</b></p><p> AbstractV</p><p> 第1章 緒 論1</p><p>
34、; 1.1 項目背景1</p><p> 1.2 項目主要工作1</p><p> 1.3 論文組織結構1</p><p> 第2章 相關技術3</p><p> 2.1 Extjs 43</p><p> 2.2 .NET框架3</p><p> 2.3 C#語言5
35、</p><p> 2.4 數(shù)據(jù)庫訪問技術ADO.NET6</p><p> 2.5 SQL Server 20059</p><p> 2.6 JSON9</p><p> 第3章 系統(tǒng)需求分析12</p><p> 3.1 系統(tǒng)功能概述12</p><p> 3.1 系
36、統(tǒng)整體功能結構12</p><p> 3.1.1 系統(tǒng)模塊功能描述12</p><p> 3.1.2 系統(tǒng)模塊圖13</p><p> 3.2 系統(tǒng)模塊分析13</p><p> 3.2.1 用戶管理模塊13</p><p> 3.2.2 權限管理模塊15</p><p>
37、 3.2.3 材料類別管理模塊17</p><p> 3.2.4 材料管理模塊18</p><p> 3.2.6 材料庫管理模塊21</p><p> 3.2.7 WebService接口23</p><p> 第4章 系統(tǒng)總體設計25</p><p> 4.1 系統(tǒng)體系架構25</p&g
38、t;<p> 4.2 系統(tǒng)類架構26</p><p> 4.2.1 總體類架構26</p><p> 4.2.2 DAL層26</p><p> 4.2.3 BLL層30</p><p> 4.3 數(shù)據(jù)庫結構設計30</p><p> 4.3.1 數(shù)據(jù)庫表結構30</p>
39、;<p> 4.3.2 數(shù)據(jù)庫表關系圖33</p><p> 第5章 系統(tǒng)詳細設計與實現(xiàn)34</p><p> 5.1 系統(tǒng)界面34</p><p> 5.1.1 整體界面34</p><p> 5.1.2 登錄界面34</p><p> 5.1.3 用戶維護界面35</p&
40、gt;<p> 5.1.4 權限管理界面36</p><p> 5.1.5 材料維護界面37</p><p> 5.1.6 材料查詢界面37</p><p> 5.1.7選材范圍界面38</p><p> 5.2 用戶管理模塊39</p><p> 5.2.1 用戶新增39<
41、/p><p> 5.2.2 用戶信息修改40</p><p> 5.2.3 用戶刪除41</p><p> 5.2.4 個人信息修改42</p><p> 5.2.5 密碼修改42</p><p> 5.3 權限管理模塊43</p><p> 5.3.1 角色新增43<
42、/p><p> 5.3.2 角色刪除43</p><p> 5.3.3 角色權限分配44</p><p> 5.4 材料類別管理模塊45</p><p> 5.4.1 材料類別新增45</p><p> 5.4.2 材料類別信息修改46</p><p> 5.4.3 材料類別信
43、息刪除46</p><p> 5.5 材料管理模塊47</p><p> 5.5.1 材料新增47</p><p> 5.5.2 材料導入47</p><p> 5.5.3 材料信息修改48</p><p> 5.5.4 材料刪除49</p><p> 5.6 材料審批模
44、塊49</p><p> 5.6.1 材料審批49</p><p> 5.7 材料庫管理模塊51</p><p> 5.7.1 材料查詢51</p><p> 5.7.2 確定選材范圍52</p><p> 5.7.3 選材范圍查詢52</p><p> 5.7.4 選材
45、范圍刪除53</p><p> 5.7.5 選材范圍審批53</p><p><b> 結論55</b></p><p><b> 致謝56</b></p><p><b> 參考文獻57</b></p><p><b>
46、第1章 緒 論</b></p><p><b> 1.1 項目背景</b></p><p> 材料數(shù)據(jù)庫是材料研究與應用的基礎,由于材料科學與工程應用的迅猛發(fā)展,有關材料組成、結構、性能的數(shù)據(jù)已經達到了驚人的數(shù)量,依靠傳統(tǒng)的存儲方式一手冊、圖表已經不能滿足用戶的需求了。因此,信息化的材料數(shù)據(jù)庫已經成為計算機在材料領域中最廣泛、最有實際效益的應用系統(tǒng)。
47、</p><p> 在以往的航空設計中,設計員能夠選用的航空材料往往有嚴格的限制范圍,而且在具體選材中,多采用手工查找方式,費時費力。雖然有一些國外的商用數(shù)據(jù)庫可供使用,但由于這些材料數(shù)據(jù)庫中的具體內容沒有經過嚴格的審查,因此不能直接使用,且查詢十分不便。本項目根據(jù)這一現(xiàn)狀,設計并開發(fā)了網絡化航空設計材料數(shù)據(jù)庫,數(shù)據(jù)庫中的全部材料都是經過審查可用于航空設計的材料,充分考慮了用戶的輸入、查詢的可靠性。</p
48、><p> 基于.NET的航空設計材料數(shù)據(jù)庫系統(tǒng)的主要目標是盡可能的把航空設計材料及其他材料數(shù)據(jù)存儲起來,提供查詢,以滿足設計的需要,并為第三方設計軟件提供 Webservice接口。航空設計材料范圍寬,數(shù)據(jù)多,精度高,數(shù)據(jù)來源要準確可靠。</p><p> 1.2 項目主要工作</p><p> 1、系統(tǒng)用戶及權限管理;</p><p&
49、gt; 2、材料編碼,包括根據(jù)材料基礎信息,生成材料統(tǒng)一編號及基礎信息表的管理,主要涉及材料類別、牌號、品牌、狀態(tài)、廠家及批次等;</p><p> 3、材料管理,包括新建、刪除、導入;</p><p> 4、材料審批,在新建、導入和刪除同時發(fā)出審批的請求,審批通過執(zhí)行用戶請求;</p><p> 5、材料庫管理,根據(jù)材料的不同狀態(tài)分為參考材料、設計材料和選
50、材范圍;</p><p> 6、第三方設計軟件調用接口WebService(此功能為擴展功能,根據(jù)完成情況而確定是否完成。)</p><p> 1.3 論文組織結構</p><p> 第一章 緒論:介紹了畢業(yè)設計項目航空設計材料數(shù)據(jù)庫研究的背景,總體介紹了畢業(yè)設計項目本人所需完成的主要工作內容,最后給出了論文的整體結構。</p><p>
51、; 第二章 相關技術:介紹了實現(xiàn)航空設計材料數(shù)據(jù)庫項目所要用到的相關技術,為畢業(yè)設計項目的設計與實現(xiàn)奠定了理論基礎與技術支持。</p><p> 第三章 系統(tǒng)需求分析:從航空設計材料數(shù)據(jù)庫項目的整體功能結構以及用戶管理、權限管理、材料類別管理、材料管理、材料審批、材料庫管理和WebService接口各個子模塊進行了可行性分析,并使用UML用例圖分析了各模塊功能。</p><p> 第
52、四章 系統(tǒng)總體設計:設計了系統(tǒng)體系架構、系統(tǒng)類架構以及數(shù)據(jù)庫結構,并對數(shù)據(jù)庫表進行了詳細設計。</p><p> 第五章 系統(tǒng)詳細設計與實現(xiàn):闡述了航空設計材料數(shù)據(jù)庫的詳細設計與實現(xiàn),體現(xiàn)了系統(tǒng)實現(xiàn)過程中所做的一些具體工作,包括用戶管理、權限管理、材料類別管理、材料審批、材料庫管理等子模塊的實現(xiàn),并對其中個別復雜的流程進行重點說明,并用時序圖設計了系統(tǒng)的動態(tài)模型。</p><p> 結
53、論:總結了本次畢業(yè)設計項目的主要研究內容,及進一步完善系統(tǒng)的相關工作。</p><p><b> 第2章 相關技術</b></p><p> 本項目以.NET框架為基礎,采用Extjs4實現(xiàn)前臺頁面設計,采用C#語言編寫功能代碼,采用SQL Server 2005進行后臺數(shù)據(jù)庫設計與開發(fā),本章將介紹這幾項關鍵技術,作為航空設計材料數(shù)據(jù)庫的設計與實現(xiàn)的理論基礎。&l
54、t;/p><p> 2.1 Extjs 4</p><p> ExtJS是一種主要用于創(chuàng)建前端用戶界面,是一個基本與后臺技術無關的前端ajax框架。功能豐富,無人能出其右。無論是界面之美,還是功能之強,ext的表格控件都高居榜首。單選行,多選行,高亮顯示選中的行,拖拽改變列寬度,按列排序,這些基本功能ExtJS輕量級實現(xiàn)。自動生成行號,支持checkbox全選,動態(tài)選擇顯示哪些列,支持本地
55、以及遠程分頁,可以對單元格按照自己的想法進行渲染,這些也算可以想到的功能。再加上可編輯grid,添加新行,刪除一或多行,提示多行數(shù)據(jù),拖拽改變grid大小,grid之間拖拽一或多行,甚至可以在tree和grid之間進行拖拽,這些功能實在太神奇了。更令人驚嘆的是,這些功能竟然都在ext表格控件里實現(xiàn)了。</p><p> 1、ExtJS可以用來開發(fā)RIA也即富客戶端的AJAX應用,是一個用javascript寫的
56、,主要用于創(chuàng)建前端用戶界面,是一個與后臺技術無關的前端ajax框架。因此,可以把ExtJS用在.Net、Java、Php等各種開發(fā)語言開發(fā)的應用中。ExtJs最開始基于YUI技術,由開發(fā)人員JackSlocum開發(fā),通過參考JavaSwing等機制來組織可視化組件,無論從UI界面上CSS樣式的應用,到數(shù)據(jù)解析上的異常處理,都可算是一款不可多得的JavaScript客戶端技術的精品。</p><p> 2、Ext
57、的UI組件模型和開發(fā)理念脫胎、成型于Yahoo組件庫YUI和Java平臺上Swing兩者,并為開發(fā)者屏蔽了大量跨瀏覽器方面的處理。相對來說,EXT要比開發(fā)者直接針對DOM、W3C對象模型開發(fā)UI組件輕松。</p><p> 2.2 .NET框架</p><p> NET是一個開發(fā)和運行軟件的新環(huán)境,便于開發(fā)基于Wbe的服務,擁有豐富的運行庫服務以及支持用多種語言編寫的組件,具有跨語言和
58、跨平臺的互操作能力"其中VisualStudio.NET和.NET Frame,ork組成了微軟第一個完全集成的開發(fā)環(huán)境,這些環(huán)境可以在.NTE平臺上構建MxLWeb服務和下一代互聯(lián)網應用程序,功能強大的工具和平臺的結合使.NTE開發(fā)更快!更靈活!更有趣。.NET Farmework提供了.NTE平臺的編程模型,使它可以部署和運行XMLWeb服務和其它類型的應用程序,包括基于客戶端!服務器端或服務的應用程序"VISu
59、alStudio.NTE構建在支持公共互聯(lián)網標準的MxLWbe服務基本架構之上,是微軟快速應用程序開發(fā)(ARD)工具,使開發(fā)人員能夠為任何設備和平臺創(chuàng)建和部署廣泛的網絡應用程序。.</p><p> NTE框架是Microsoft.NTE的核心,位于操作系統(tǒng)之上,由許多組件組成,.NTE框架是一個多語言組件開發(fā)和執(zhí)行環(huán)境,它由三個主要部分組成:</p><p> (1)公共語言運行時:
60、公共語言運行時在組件的開發(fā)及運行過程中,都扮演著非常重要的角色"NET框架最重要的組件就是CLR,它是適用于所有.NTE語言的運行時,它用于執(zhí)行和管理用任何一種針對.NTE平臺的語言編寫的所有代碼"CRL支持一般中間語言(CLI)中出現(xiàn)的所有語言"通過.NET編譯器得到的是Intermediate Langage(IL),而不是機器代碼,同Java的字節(jié)碼不同,LI是不要翻譯的,但在代碼執(zhí)行前L1要經過uj
61、st一in一tmie(JIT)編譯,被轉化為機器代碼后再被執(zhí)行.</p><p> (2)統(tǒng)一的編程類:.NTE框架為開發(fā)人員提供了一個統(tǒng)一!面向對象!層次化!可擴展的類庫集〔AP工)"現(xiàn)今,C什開發(fā)人員使用的是Microsoft基類庫,Jvaa開發(fā)人員使用的是Windwos基類庫,而viusalBasic用戶使用的又是ViusalBasicAPI集".NTE框架統(tǒng)一了微軟當前的各種不同類框
62、架,這樣開發(fā)人員無需學習多種框架就能順利編程"而且通過創(chuàng)建跨編程語言的公共APT集,.NET框架可實現(xiàn)跨語言繼承性!錯誤處理功能和調試功能"實際上,從JScript到C++的所有編程語言,都是相互等同的,開發(fā)人員可以自由選擇理想的編程語言"</p><p> (3)活動服務器頁面(ASP.NTE):AsP.NTE是使用.NTE框架提供的編程類庫構建而成的。</p>&
63、lt;p> .NET 是 Microsoft的 XML(Extensible Markup Language) Web 服務平臺,基于XML Web services構造。XML Web services是分布式計算的重要標準,也是未來軟件開發(fā)的方向,通過XML Web services標準,應用軟件之間可以實現(xiàn)跨平臺,跨編程語言的聯(lián)接和互操作,同時通過Internet傳輸和共享數(shù)據(jù),因此可以實現(xiàn)個人之間、個人與企業(yè)之間、企業(yè)之
64、間的信息互連,可實現(xiàn)人們隨時隨地存取和使用信息的夢想。</p><p> 開發(fā)人員通過使用Microsoft Visual Studio.NET和.NET框架,可以快速而輕松地創(chuàng)建最先進的應用程序和XML Web services .</p><p> 1、由于基于XML的標準接口簡化了軟件之間的通訊,因此可以調用Internet上全部的XML Web services,并集成到的開發(fā)
65、程序中,快速而輕松地創(chuàng)建所需的解決方案。</p><p> 2、.NET本身自帶一組常用XMLWeb services,即Microsoft .NET我的服務,以提供諸如用戶標識和U歷訪問之類的功能。</p><p> 3、通過使用公共語言運行庫CLR(Common Language Runtime),開發(fā)人員可以使用任何現(xiàn)代編程語言創(chuàng)建XML Web services,大幅度增大
66、開發(fā)人員可用資源量,并允許開發(fā)人員隨意使用最適合解決身邊問題的編程語言。</p><p> 4、VisualStudio .NET在很大程度上自動化了將應用程序轉換為XML Web services的過程,減少了快速創(chuàng)建和部署解決方案所需的時間和工作。</p><p> 5、在本質上,XML將數(shù)據(jù)與數(shù)據(jù)的顯示方式分開。將.NET體驗與顯示特性分開,可使添加新接口技術(如語音和手寫識別
67、)變得容易,而無需重編應用程序。</p><p> 6、.NET本身自帶一組常用XMLWeb services,即.NET我的服務和其他.NET構件塊服務提供了許多應用程序所需的核心功能,如用戶身份驗證、通知功能、聯(lián)系人列表等等,而無需額外的編碼工作。</p><p> .NET具有更高的可靠性:</p><p> 1、借助豐富的處理能力和當前可用的帶寬,.
68、NET平臺可以利用分布式計算技術。只要處理最有意義或者只要駐留有XML Web services,處理就會發(fā)生,從而分散CPU負載并減少網絡通信量。</p><p> 2、公共語言運行庫準備好了一個托管的執(zhí)行環(huán)境,可消除內存泄漏、訪問沖突和版本控制問題。</p><p> 3、.NET框架強制類型安全、顯式代碼共享和應用程序隔離,從而保證沒有任何XML Web services可以影響
69、或非法調用另一個XML Web services。集成在Microsoft .NET中XML (由WWW聯(lián)合會(W3C)維護的開放標準)的使用消除了數(shù)據(jù)共享和軟件集成的障礙。</p><p><b> 2.3 C#語言</b></p><p> C#是微軟公司發(fā)布的一種面向對象的、運行于.NET Framework之上的高級程序設計語言。并定于在微軟職業(yè)開發(fā)者論壇
70、(PDC)上登臺亮相。C#是微軟公司研究員Anders Hejlsberg的最新成果。C#看起來與Java有著驚人的相似;它包括了諸如單一繼承、接口、與Java幾乎同樣的語法和編譯成中間代碼再運行的過程。但是C#與Java有著明顯的不同,它借鑒了Delphi的一個特點,與COM(組件對象模型)是直接集成的,而且它是微軟公司 .NET windows網絡框架的主角。</p><p> C#是一種安全的、穩(wěn)定的、簡
71、單的、優(yōu)雅的,由C和C++衍生出來的面向對象的編程語言。它在繼承C和C++強大功能的同時去掉了一些它們的復雜特性(例如沒有宏以及不允許多重繼承)。C#綜合了VB簡單的可視化操作和C++的高運行效率,以其強大的操作能力、優(yōu)雅的語法風格、創(chuàng)新的語言特性和便捷的面向組件編程的支持成為.NET開發(fā)的首選語言。</p><p> C#是面向對象的編程語言。它使得程序員可以快速地編寫各種基于MICROSOFT .NET平臺
72、的應用程序,MICROSOFT .NET提供了一系列的工具和服務來最大程度地開發(fā)利用計算與通訊領域。</p><p> 正是由于C#面向對象的卓越設計,使它成為構建各類組件的理想之選——無論是高級的商業(yè)對象還是系統(tǒng)級的應用程序。使用簡單的C#語言結構,這些組件可以方便的轉化為XML網絡服務,從而使它們可以由任何語言在任何操作系統(tǒng)上通過INTERNET進行調用。</p><p> C#使
73、得C++程序員可以高效的開發(fā)程序,且因可調用由 C/C++ 編寫的本機原生函數(shù),因此絕不損失C/C++原有的強大的功能。因為這種繼承關系,C#與C/C++具有極大的相似性,熟悉類似語言的開發(fā)者可以很快的轉向C#。</p><p> C#旨在設計成為一種“簡單、現(xiàn)代、通用”,以及面向對象的程序設計語言,此種語言的實現(xiàn),應提供對于以下軟件工程要素的支持:強類型檢查、數(shù)組維度檢查、未初始化的變量引用檢測、自動垃圾收集
74、(Garbage Collection,指一種自動內存釋放技術)。軟件必須做到強大、持久,并具有較強的編程生產力。此種語言為在分布式環(huán)境中的開發(fā)提供適用的組件開發(fā)應用?!?lt;/p><p> 為使程序員容易遷移到這種語言,源代碼的可移植性十分重要,尤其是對于那些已熟悉C和C++的程序員而言。對國際化的支持非常重要。C#適合為獨立和嵌入式的系統(tǒng)編寫程序,從使用復雜操作系統(tǒng)的大型系統(tǒng)到特定應用的小型系統(tǒng)均適用。<
75、;/p><p> C#所開發(fā)的程序源代碼并不是編譯成能夠直接在操作系統(tǒng)上執(zhí)行的二進制本地代碼。與Java類似,它被編譯成為中間代碼,然后通過.NET Framework的虛擬機——被稱之為通用語言運行時(CLR)——執(zhí)行。所有的.Net編程語言都被編譯成這種被稱為MSIL(Microsoft Intermediate Language )的中間代碼。因此雖然最終的程序在表面上仍然與傳統(tǒng)意義上的可執(zhí)行文件都具有“.e
76、xe”的后綴名。但是實際上,如果計算機上沒有安裝.Net Framework,那么這些程序將不能夠被執(zhí)行?!≡诔绦驁?zhí)行時,.Net Framework將中間代碼翻譯成為二進制機器碼,從而使它得到正確的運行。最終的二進制代碼被存儲在一個緩沖區(qū)中。所以一旦程序使用了相同的代碼,那么將會調用緩沖區(qū)中的版本。這樣如果一個.Net程序第二次被運行,那么這種翻譯不需要進行第二次,速度明顯加快。</p><p> 2.4 數(shù)
77、據(jù)庫訪問技術ADO.NET</p><p> ADO.NET的名稱起源于ADO(ActiveX Data Objects),這是一個廣泛的類組,用于在以往的Microsoft技術中訪問數(shù)據(jù)。之所以使用ADO.NET名稱,是因為Microsoft希望表明,這是在NET編程環(huán)境中優(yōu)先使用的數(shù)據(jù)訪問接口。</p><p> ado.net可讓開發(fā)人員以一致的方式存取資料來源(例如 SQL S
78、erver 與 XML),以及透過 OLE DB 和 ODBC 所公開的資料來源。資料共用的消費者應用程序可使用ado.net 來連接至這些資料來源,并且擷取、處理及更新其中所含的資料。</p><p> ado.net可將資料管理的資料存取分成不連續(xù)的元件,這些元件可分開使用,也可串聯(lián)使用ado.net也包含 .NET Framework 資料提供者,以用于連接資料庫、執(zhí)行命令和擷取結果。這些結果會直接處理、
79、放入ado.net DataSet 物件中以便利用機器操作 (Ad Hoc)的方式公開給使用者、與多個來源的資料結合,或在各層之間進行傳遞。DataSet 物件也可以與.NET Framework 資料提供者分開使用,以便管理應用程序本機的資料或來自 XML 的資料。</p><p> ado.net類別 (Class) 位于 System.Data.dll 中,而且會與 System.Xml.dll 中的XM
80、L 類別整合。</p><p> ado.net可為撰寫 Managed 程式碼的開發(fā)人員提供類似于ActiveX Data Objects (ADO)提供給原生元件物件模型 (Component Object Model,COM)開發(fā)人員的功能。建議使用ado.net而非ADO來存取.NET 應用程序中的資料。</p><p> ADO .NET會提供最直接的方法,讓開發(fā)人員在 .N
81、ET Framework 中進行資料存取。</p><p> ADO .NET提供了平臺互用性和可伸縮的數(shù)據(jù)訪問,ADO .NET增強了對非連接編程模式的支持,并支持RICH XML。由于傳送的數(shù)據(jù)都是XML格式的,因此任何能夠讀取XML格式的應用程序都可以進行數(shù)據(jù)處理。事實上,接受數(shù)據(jù)的組件不一定要是ADO .NET組件,它可以是基于一個Microsoft Visual Studio的解決方案,也可以是任何運
82、行在其它平臺上的任何應用程序。 </p><p> ado.net是一組用于和數(shù)據(jù)源進行交互的面向對象類庫。通常情況下,數(shù)據(jù)源是數(shù)據(jù)庫,但它同樣也能夠是文本文件、Excel表格或者XML文件。 </p><p> ado.net允許和不同類型的數(shù)據(jù)源以及數(shù)據(jù)庫進行交互。然而并沒有與此相關的一系列類來完成這樣的工作。因為不同的數(shù)據(jù)源采用不同的協(xié)議,所以對于不同的數(shù)據(jù)源必須采用相應的協(xié)議。
83、一些老式的數(shù)據(jù)源使用ODBC協(xié)議,許多新的數(shù)據(jù)源使用OleDb協(xié)議,并且現(xiàn)在還不斷出現(xiàn)更多的數(shù)據(jù)源,這些數(shù)據(jù)源都可以通過NET的ADO .NET類庫來進行連接。 </p><p> ado.net提供與數(shù)據(jù)源進行交互的相關的公共方法,但是對于不同的數(shù)據(jù)源采用一組不同的類庫。這些類庫稱為Data Providers,并且通常是以與之交互的協(xié)議和數(shù)據(jù)源的類型來命名的。</p><p> a
84、do.net是與數(shù)據(jù)源交互的.NET技術。有許多的Data Providers,它將允許與不同的數(shù)據(jù)源交流――取決于它們所使用的協(xié)議或者數(shù)據(jù)庫。然而無論使用什么樣的Data Provider,開發(fā)人員將使用相似的對象與數(shù)據(jù)源進行交互。SqlConnection對象管理與數(shù)據(jù)源的連接。SqlCommand對象允許開發(fā)人員與數(shù)據(jù)源交流并發(fā)送命令給它。為了對進行快速的只“向前”地讀取數(shù)據(jù),使用SqlDataReader。如果想使用斷開數(shù)據(jù),使
85、用DataSet并實現(xiàn)能進行讀取或者寫入數(shù)據(jù)源的SqlDataAdapter。</p><p> Connection 類</p><p> 和數(shù)據(jù)庫交互,必須連接它。連接幫助指明數(shù)據(jù)庫服務器、數(shù)據(jù)庫名字、用戶名、密碼,和連接數(shù)據(jù)庫所需要的其它參數(shù)。Connection對象會被Command對象使用,這樣就能夠知道是在哪個數(shù)據(jù)源上面執(zhí)行命令。 </p><p>
86、 與數(shù)據(jù)庫交互的過程意味著必須指明想要執(zhí)行的操作。這是依靠Command對象執(zhí)行的。開發(fā)人員使用Command對象來發(fā)送SQL語句給數(shù)據(jù)庫。Command對象使用Connection對象來指出與哪個數(shù)據(jù)源進行連接。開發(fā)人員能夠單獨使用Command對象來直接執(zhí)行命令,或者將一個Command對象的引用傳遞給DataAdapter,它保存了一組能夠操作下面描述的一組數(shù)據(jù)的命令。</p><p><b>
87、 Command對象</b></p><p> 成功與數(shù)據(jù)建立連接后,就可以用Command對象來執(zhí)行查詢、修改、插入、刪除等命令;Command對象常用的方法有ExecuteReader()方法、ExecuteScalar()方法和ExecuteNonQuery()方法;插入數(shù)據(jù)可用ExecuteNonQuery()方法來執(zhí)行插入命令。</p><p> DataRea
88、der類</p><p> 許多數(shù)據(jù)操作要求開發(fā)人員只是讀取一串數(shù)據(jù)。DataReader對象允許開發(fā)人員獲得從Command對象的SELECT語句得到的結果??紤]性能的因素,從DataReader返回的數(shù)據(jù)都是快速的且只是“向前”的數(shù)據(jù)流。這意味著開發(fā)人員只能按照一定的順序從數(shù)據(jù)流中取出數(shù)據(jù)。這對于速度來說是有好處的,但是如果開發(fā)人員需要操作數(shù)據(jù),更好的辦法是使用DataSet。</p><
89、;p><b> DataSet對象</b></p><p> DataSet對象是數(shù)據(jù)在內存中的表示形式。它包括多個DataTable對象,而DataTable包含列和行,就象一個普通的數(shù)據(jù)庫中的表。開發(fā)人員甚至能夠定義表之間的關系來創(chuàng)建主從關系(parent-child relationships)。DataSet是在特定的場景下使用――幫助管理內存中的數(shù)據(jù)并支持對數(shù)據(jù)的斷開操作
90、的。DataSet是被所有Data Providers使用的對象,因此它并不像Data Provider一樣需要特別的前綴。</p><p> DataAdapter類</p><p> 某些時候開發(fā)人員使用的數(shù)據(jù)主要是只讀的,并且開發(fā)人員很少需要將其改變至底層的數(shù)據(jù)源。同樣一些情況要求在內存中緩存數(shù)據(jù),以此來減少并不改變的數(shù)據(jù)被數(shù)據(jù)庫調用的次數(shù)。DataAdapter通過斷開模型來幫
91、助開發(fā)人員方便的完成對以上情況的處理。當在一單批次的對數(shù)據(jù)庫的讀寫操作的持續(xù)的改變返回至數(shù)據(jù)庫的時候,DataAdapter 填充(fill)DataSet對象。DataAadapter包含對連接對象以及當對數(shù)據(jù)庫進行讀取或者寫入的時候自動的打開或者關閉連接的引用。另外,DataAdapter包含對數(shù)據(jù)的SELECT、INSERT、UPDATE和DELETE操作的Command對象引用。開發(fā)人員將為DataSet中的每一個Table都定
92、義DataAadapter,它將為開發(fā)人員照顧所有與數(shù)據(jù)庫的連接。所以開發(fā)人員將做的工作是告訴DataAdapter什么時候裝載或者寫入到數(shù)據(jù)庫。</p><p> DataTable類</p><p> DataTable 是一個數(shù)據(jù)網格控件。它可以被應用在 VB 和 ASP 上。它無須代碼就可以簡單的綁定數(shù)據(jù)庫。</p><p> 2.5 SQL Serv
93、er 2005</p><p> SQL Server2005 包括關系型數(shù)據(jù)庫、復制服務、報表服務、集成服務等服務,有管理工具和開發(fā)工具兩種工具。它為不同規(guī)模的組織提供了充分利用數(shù)據(jù)資產、減少 IT 復雜度等好處。</p><p> 它提供企業(yè)級數(shù)據(jù)管理:具有易管理、可伸縮性、安全性。</p><p> 它提升開發(fā)者的能力:為開發(fā)者提供擴展的語言支持、改進的
94、開發(fā)工具以及改進的數(shù)據(jù)訪問和 Web 服務。</p><p> 引入了查詢通知:SQL Server2005 引入了對 SQL Server 查詢的通知支持,我們可以用它給 SQL Server 發(fā)送一個命令,要求之后運行的同樣的命令在產生不同結果時,SQL Server 能夠生成一個通知。</p><p> SQLServer2005 還有其他新的特性,在此不一一介紹。SQLServ
95、er2005 能夠滿足不同類型的數(shù)據(jù)庫解決方案。SQLServer2005 還為數(shù)據(jù)管理與分析帶來了靈活性,允許單位在快速變化的環(huán)境中從容響應,從而獲得競爭優(yōu)勢。從數(shù)據(jù)管理和分析角度看,將原始數(shù)據(jù)轉化為商業(yè)智能和充分利用 Web 帶來的機會非常重要。作為一個完備的數(shù)據(jù)庫和數(shù)據(jù)分析包,SQLServer2005 為快速開發(fā)新一代企業(yè)級應用程序、為企業(yè)贏得核心競爭優(yōu)勢打開了勝利之門。作為重要的基準測試可伸縮性和速度的記錄保持者,SQLSer
96、ver2005 是一個具備完全 Web 支持的數(shù)據(jù)庫產品,提供了對可擴展標記語言(XML)的核心支持以及在 Internet 上和防火墻外進行查詢的能力。</p><p><b> 2.6 JSON</b></p><p> JSON(JavaScript Object Notation) 是一種輕量級的數(shù)據(jù)交換格式。它基于JavaScript(Standard
97、ECMA-262 3rd Edition - December 1999)的一個子集。 JSON采用完全獨立于語言的文本格式,但是也使用了類似于C語言家族的習慣(包括C, C++, C#, Java, JavaScript, Perl, Python等)。這些特性使JSON成為理想的數(shù)據(jù)交換語言。易于人閱讀和編寫,同時也易于機器解析和生成。</p><p> JSON建構有兩種結構:</p>&l
98、t;p> json簡單說就是javascript中的對象和數(shù)組,所以這兩種結構就是對象和數(shù)組2種結構,通過這兩種結構可以表示各種復雜的結構</p><p> 1、對象:對象在js中表示為“{}”擴起來的內容,數(shù)據(jù)結構為 {key:value,key:value,...}的鍵值對的結構,在面向對象的語言中,key為對象的屬性,value為對應的屬性值,所以很容易理解,取值方法為 對象.key 獲取屬性值,
99、這個屬性值的類型可以是 數(shù)字、字符串、數(shù)組、對象幾種。</p><p> 2、數(shù)組:數(shù)組在js中是中括號“[]”擴起來的內容,數(shù)據(jù)結構為 ["java","javascript","vb",...],取值方式和所有語言中一樣,使用索引獲取,字段值的類型可以是 數(shù)字、字符串、數(shù)組、對象幾種。</p><p><b>
100、和XML的比較:</b></p><p><b> 可讀性</b></p><p> JSON和XML的可讀性可謂不相上下,一邊是簡易的語法,一邊是規(guī)范的標簽形式,很難分出勝負。</p><p><b> 可擴展性</b></p><p> XML天生有很好的擴展性,JSON當然
101、也有,沒有什么是XML能擴展,而JSON卻不能擴展的。不過JSON在Javascript主場作戰(zhàn),可以存儲Javascript復合對象,有著xml不可比擬的優(yōu)勢。</p><p><b> 編碼難度</b></p><p> XML有豐富的編碼工具,比如Dom4j、JDom等,JSON也有提供的工具。無工具的情況下,相信熟練的開發(fā)人員一樣能很快的寫出想要的xml文
102、檔和JSON字符串,不過,xml文檔要多很多結構上的字符。</p><p><b> 解碼難度</b></p><p> XML的解析方式有兩種:</p><p> 一是通過文檔模型解析,也就是通過父標簽索引出一組標記。例如:xmlData.getElementsByTagName("tagName"),但是這樣是要在
103、預先知道文檔結構的情況下使用,無法進行通用的封裝。</p><p> 另外一種方法是遍歷節(jié)點(document 以及 childNodes)。這個可以通過遞歸來實現(xiàn),不過解析出來的數(shù)據(jù)仍舊是形式各異,往往也不能滿足預先的要求。</p><p> 凡是這樣可擴展的結構數(shù)據(jù)解析起來一定都很困難。</p><p> JSON也同樣如此。如果預先知道JSON結構的情況
104、下,使用JSON進行數(shù)據(jù)傳遞簡直是太美妙了,可以寫出很實用美觀可讀性強的代碼。如果你是純粹的前臺開發(fā)人員,一定會非常喜歡JSON。但是如果你是一個應用開發(fā)人員,就不是那么喜歡了,畢竟xml才是真正的結構化標記語言,用于進行數(shù)據(jù)傳遞。</p><p> 而如果不知道JSON的結構而去解析JSON的話,那簡直是噩夢。費時費力不說,代碼也會變得冗余拖沓,得到的結果也不盡人意。但是這樣也不影響眾多前臺開發(fā)人員選擇JSO
105、N。因為json.js中的toJSONString()就可以看到JSON的字符串結構。當然不是使用這個字符串,這樣仍舊是噩夢。常用JSON的人看到這個字符串之后,就對JSON的結構很明了了,就更容易的操作JSON。</p><p> 以上是在Javascript中僅對于數(shù)據(jù)傳遞的xml與JSON的解析。在Javascript地盤內,JSON畢竟是主場作戰(zhàn),其優(yōu)勢當然要遠遠優(yōu)越于xml。如果JSON中存儲Java
106、script復合對象,而且不知道其結構的話,我相信很多程序員也一樣是哭著解析JSON的。</p><p> 第3章 系統(tǒng)需求分析</p><p> 3.1 系統(tǒng)功能概述</p><p> 基于.NET的航空設計材料數(shù)據(jù)庫系統(tǒng)的主要目標是方便工作人員對數(shù)據(jù)庫的管理與維護,并盡可能的把航空設計材料及其他材料數(shù)據(jù)存儲起來,提供查詢、分類歸整數(shù)據(jù)庫中材料,以滿足設計的
107、需要,并為第三方設計軟件提供webservice接口,方便數(shù)據(jù)的導入導出。因此,該系統(tǒng)應具備以下功能模塊:</p><p> ?。?)用戶與權限管理</p><p><b> ?。?)材料類別管理</b></p><p><b> ?。?)材料管理</b></p><p><b> (4
108、)材料庫管理</b></p><p> 3.1 系統(tǒng)整體功能結構</p><p> 3.1.1 系統(tǒng)模塊功能描述</p><p> (1)用戶與權限管理</p><p> 用戶管理是指超級管理員可為數(shù)據(jù)庫系統(tǒng)添加、刪除、修改各個級別的用戶每位用戶可對自己的基本信息以及登陸密碼進行修改。權限管理是指超級管理員制定使用數(shù)據(jù)庫系
109、統(tǒng)的角色,分配相對應的權限,以供添加、修改用戶時的權限分配。</p><p><b> ?。?)材料類別管理</b></p><p> 材料類別管理主要包括對于材料類別的增、刪、改功能,以滿足對材料進行添加時的類別選擇。</p><p><b> ?。?)材料管理</b></p><p> 材料
110、管理是航空設計材料數(shù)據(jù)庫系統(tǒng)的核心功能模塊之一,它主要包括材料維護、材料審批、材料操作日志三個子項。材料維護包括對材料的增加、刪除、修改、查看詳細信息、導出excel模板以及對excel的導入并解析入數(shù)據(jù)庫等功能。材料維護還包括對于后臺材料編碼的需求,每新增或導入一條材料,都需按照其類別、名稱、批次等信息進行材料的編碼,材料編碼是一條材料信息的唯一標識,要求有12位,并可通過材料編碼識別出材料的一些基本信息。材料審批是指當操作人員進行對
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于vb.net的個人理財——數(shù)據(jù)庫設計【畢業(yè)論文】
- 基于.net技術遠程訪問數(shù)據(jù)庫的設計和實現(xiàn)
- 基于.net技術的數(shù)據(jù)庫技術與應用
- 基于.net技術的數(shù)據(jù)庫技術與應用
- 基于.net的企業(yè)網站數(shù)據(jù)庫的設計與應用
- 畢業(yè)設計--基于.net的畢業(yè)論文數(shù)據(jù)庫系統(tǒng)的設計與實現(xiàn)
- 基于.net的數(shù)據(jù)庫訪問技術的優(yōu)化研究
- 論文-數(shù)據(jù)庫設計-參考
- 航空訂票系統(tǒng)數(shù)據(jù)庫課程設計
- 基于vb.net的個人理財系統(tǒng)—數(shù)據(jù)庫設計【文獻綜述】
- 數(shù)據(jù)庫課程設計---餐飲管理系統(tǒng)(.net)
- 基于.net的數(shù)據(jù)庫生成引擎與or映射的研究
- 數(shù)據(jù)庫課程設計論文---汽車銷售管理系統(tǒng)數(shù)據(jù)庫設計
- 基于vb.net的個人理財系統(tǒng)—數(shù)據(jù)庫設計【開題報告】
- 基于vb.net的atm取款機模擬軟件—數(shù)據(jù)庫設計【畢業(yè)論文】
- 數(shù)據(jù)庫課程設計航空售票管理系統(tǒng)
- 數(shù)據(jù)庫課程設計---數(shù)據(jù)庫
- 數(shù)據(jù)庫課程設計-- 航空訂票管理系統(tǒng)
- 數(shù)據(jù)庫設計畢業(yè)論文
- 數(shù)據(jù)庫課程設計--數(shù)據(jù)庫設計
評論
0/150
提交評論