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