

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 基于WebGIS的物流信息系統(tǒng)的設(shè)計與實現(xiàn)</p><p><b> 作者姓名: </b></p><p> 指導(dǎo)教師: 教授</p><p> 單位名稱:信息科學(xué)與工程學(xué)院</p><p> 專業(yè)名稱:計算機科學(xué)與技術(shù)</p><p><b>
2、 2008年6月</b></p><p> Design and Implementation of WebGIS-Based Logistics Information System</p><p><b> June 2008</b></p><p> 畢業(yè)設(shè)計(論文)任務(wù)書</p><p>
3、基于WebGIS的物流信息系統(tǒng)的設(shè)計與實現(xiàn)</p><p><b> 摘 要</b></p><p> 隨著經(jīng)濟的發(fā)展和通信技術(shù)的提高,物流作為一種先進(jìn)的組織方式和管理技術(shù),被廣泛認(rèn)為是企業(yè)在降低消耗和提高勞動生產(chǎn)率以外的重要的利潤源泉,在國民經(jīng)濟和社會發(fā)展中發(fā)揮著重要作用。本文在物流企業(yè)的正常運營中,基于GIS的信息系統(tǒng)已經(jīng)成為不可或缺的管理工具。在對WebG
4、IS技術(shù)和物流企業(yè)需求進(jìn)行分析的基礎(chǔ)上,結(jié)合不同企業(yè)的業(yè)務(wù)流程的具體特點,設(shè)計了一套擴展性較強的基于WebGIS的物流信息系統(tǒng)。</p><p> 系統(tǒng)的主要功能是將企業(yè)管理人員與運輸車輛之間通過服務(wù)器連接起來,實現(xiàn)物流系統(tǒng)的監(jiān)控和管理。系統(tǒng)采用B/S架構(gòu),服務(wù)器端通過網(wǎng)絡(luò)與車輛終端通信,向車輛發(fā)送控制信息并獲取車輛的當(dāng)前狀態(tài)。同時它還和Web客戶端進(jìn)行交互,向客戶端提供地圖服務(wù),并執(zhí)行Web客戶端的請求。We
5、b客戶端采用Ajax技術(shù)與服務(wù)器端進(jìn)行通信,通過動態(tài)地圖監(jiān)控車輛。它還實現(xiàn)了發(fā)送貨物、編輯線路、發(fā)送消息等功能??紤]到可擴展性,系統(tǒng)重點實現(xiàn)了服務(wù)器端進(jìn)行消息中轉(zhuǎn)的消息隊列,建立了Web客戶端到車輛終端之間的消息通路,并可以隨時更新消息隊列中消息處理方式。本系統(tǒng)實現(xiàn)了物流系統(tǒng)的主要功能,極大提高了企業(yè)的管理水平。</p><p> 本文首先進(jìn)行了系統(tǒng)的需求獲取和業(yè)務(wù)分析。然后,采用分層的方法對系統(tǒng)進(jìn)行設(shè)計,敘述
6、了消息隊列框架的詳細(xì)設(shè)計與實現(xiàn),并敘述了服務(wù)器端和客戶端功能模塊的設(shè)計和實現(xiàn)。并通過對系統(tǒng)的測試,對其功能和性能進(jìn)行評估。最后,進(jìn)行了總結(jié),介紹了系統(tǒng)的特點和不足之處,指出了下一步的工作方向。</p><p> 關(guān)鍵詞:物流;WebGIS;消息隊列</p><p> Design and Implementation of WebGIS-Based Logistics Informat
7、ion System</p><p><b> Abstract</b></p><p> With development of economy and improvement of communication technology, as an advanced mode of organization and management skill, logist
8、ics is widely considered to be the major source of profits in the enterprise besides reducing consumption and raising labor productivity. It plays an important role in the national economy and social development. The GIS
9、-based information system has become an indispensable management tool in the regular business of logistics enterprise. Based on the analysis of</p><p> The major function of the system is to make manager co
10、mmunicated with vehicles via the server, and to realize monitoring and management of logistics system. The B/S architecture is adopted in the system. The server communicates with vehicles through network, sending them co
11、ntrol data and receiving status data from them. At the same time, server interacts with Web clients, providing web map service and executing client requests. Web client communicates with server with Ajax technology, moni
12、toring</p><p> Firstly, in this thesis the requirement elicitation and the business analysis are completed. Then system is designed into multi-layer architecture. The particular design and implementation o
13、f message queue framework are described. Design and implementation of the functional modules of server and client are presented. Function and capability of the system are evaluated through test. At last, system traits a
14、nd deficiencies are summarized, and next tasks are pointed out.</p><p> Keywords:Logistics; WebGIS; Message Queue</p><p><b> 目 錄</b></p><p> 畢業(yè)設(shè)計(論文)任務(wù)書I</p>
15、<p><b> 摘 要II</b></p><p> AbstractIII</p><p> 第1章 引 言1</p><p> 1.1 課題研究的背景和來源1</p><p> 1.2 課題研究成果應(yīng)用的實際意義2</p><p> 1.3 本文的內(nèi)容及
16、主要工作3</p><p> 第2章 相關(guān)技術(shù)簡介5</p><p> 2.1 GIS 技術(shù)5</p><p> 2.2 WebGIS 技術(shù)5</p><p> 2.2.1 WebGIS介紹5</p><p> 2.2.2 WebGIS協(xié)議介紹7</p><p> 2.2
17、.3 WebGIS的開源平臺9</p><p> 2.3 Ajax 架構(gòu)11</p><p> 2.4 Spring 架構(gòu)11</p><p> 2.5 本章小結(jié)12</p><p> 第3章 需求分析13</p><p> 3.1 系統(tǒng)實現(xiàn)目標(biāo)13</p><p> 3
18、.2 系統(tǒng)運行環(huán)境13</p><p> 3.3 系統(tǒng)的開發(fā)環(huán)境14</p><p> 3.4 功能性需求描述14</p><p> 3.4.1 發(fā)送貨物15</p><p> 3.4.2 查詢貨物狀態(tài)16</p><p> 3.4.3 提貨16</p><p> 3.4
19、.4 查詢系統(tǒng)信息16</p><p> 3.4.5 配置車輛線路16</p><p> 3.4.6 實時顯示系統(tǒng)信息17</p><p> 3.4.7 傳遞消息17</p><p> 3.4.8 發(fā)送實時狀態(tài)信息17</p><p> 3.4.9 車輛完成運輸段18</p><
20、;p> 3.4.10 操作貨物18</p><p> 3.4.11 補充需求18</p><p> 3.5 非功能性需求描述19</p><p> 3.6 系統(tǒng)術(shù)語表19</p><p> 3.7 本章小結(jié)20</p><p> 第4章 系統(tǒng)設(shè)計21</p><p>
21、; 4.1 系統(tǒng)設(shè)計原則21</p><p> 4.2 系統(tǒng)總體設(shè)計21</p><p> 4.3 數(shù)據(jù)訪問層設(shè)計22</p><p> 4.4 服務(wù)層設(shè)計23</p><p> 4.5 Web服務(wù)層設(shè)計25</p><p> 4.6 消息處理部分設(shè)計26</p><p>
22、; 4.6.1 消息隊列設(shè)計27</p><p> 4.6.2 消息處理具體功能設(shè)計28</p><p> 4.6.3 Socket控制層詳細(xì)設(shè)計29</p><p> 4.7 系統(tǒng)業(yè)務(wù)功能設(shè)計31</p><p> 4.7.1 貨物發(fā)送功能設(shè)計31</p><p> 4.7.2 線路編輯功能設(shè)計
23、33</p><p> 4.7.3 貨物運輸功能設(shè)計34</p><p> 4.7.4 權(quán)限操作功能設(shè)計35</p><p> 4.8 數(shù)據(jù)庫設(shè)計37</p><p> 4.8.1 發(fā)貨操作模塊的表設(shè)計37</p><p> 4.8.2 線路編輯模塊的表設(shè)計38</p><p&
24、gt; 4.8.3 貨物運輸模塊的表設(shè)計38</p><p> 4.8.4 權(quán)限控制模塊的表設(shè)計41</p><p> 4.8.5 消息處理模塊的表設(shè)計41</p><p> 4.9 本章小結(jié)42</p><p> 第5章 系統(tǒng)實現(xiàn)43</p><p> 5.1 地圖數(shù)據(jù)傳輸與顯示43</
25、p><p> 5.2 客戶端設(shè)計與實現(xiàn)46</p><p> 5.2.1 JavaScript語言面向?qū)ο缶幊?6</p><p> 5.2.2 客戶端請求協(xié)議和請求流程實現(xiàn)48</p><p> 5.2.3 客戶端框架實現(xiàn)49</p><p> 5.3 系統(tǒng)安全控制實現(xiàn)52</p>&l
26、t;p> 5.4 貨物處理模塊的實現(xiàn)53</p><p> 5.5 消息處理模塊的實現(xiàn)56</p><p> 5.6 本章小結(jié)58</p><p> 第6章 系統(tǒng)測試59</p><p> 6.1 單元測試59</p><p> 6.2 集成測試60</p><p>
27、; 6.3 系統(tǒng)測試61</p><p> 6.4 本章小結(jié)63</p><p> 第7章 結(jié) 論65</p><p> 7.1 本文工作總結(jié)65</p><p> 7.2 進(jìn)一步展望65</p><p><b> 參考文獻(xiàn)67</b></p><p&
28、gt;<b> 致 謝69</b></p><p><b> 引 言</b></p><p> 課題研究的背景和來源</p><p> 隨著現(xiàn)代科學(xué)技術(shù)迅猛發(fā)展,全球經(jīng)濟一體化的趨勢加強,各國都面臨著前所未有的機遇和挑戰(zhàn)。物流作為一種先進(jìn)的組織方式和管理技術(shù),被廣泛認(rèn)為是企業(yè)在降低物資消耗,提高勞動生產(chǎn)率
29、以外的重要的利潤源泉,在國民經(jīng)濟和社會發(fā)展中發(fā)揮著重要作用。</p><p> 物流業(yè)產(chǎn)生于20世紀(jì)60年代,發(fā)展到90年代,是以滿足客戶要求為目的,對貨物、服務(wù)和相關(guān)信息在產(chǎn)出地和銷售之間的實現(xiàn)高效率和低成本的正向和逆向的流動和存儲所進(jìn)行的計劃執(zhí)行和控制過程。由于現(xiàn)代生產(chǎn)技術(shù)的發(fā)展,產(chǎn)品的生命周期越來越短,在社會生產(chǎn)開始由單一品種的大批量生產(chǎn)向小批量、多品種定制化生產(chǎn)的同時,物流業(yè)開始由大批量、長周期的物流向
30、小批量、多頻次的方向發(fā)展,使物流的控制越來越復(fù)雜。隨著科學(xué)技術(shù)特別是信息技術(shù)的發(fā)展,信息化的物流使企業(yè)能夠在全球范圍內(nèi)進(jìn)行超時空的交易,又促進(jìn)了物流業(yè)的進(jìn)一步發(fā)展與繁榮。在整個物流決策中,運輸成本占到物流總成本的35%~50%左右。所以,物流信息化的重點在于物流運輸系統(tǒng)信息化[1]。</p><p> 物流信息化的技術(shù)主要包括:全球定位系統(tǒng)(GPS)、地理信息系統(tǒng)(Geographic Information
31、System , GIS)、射頻(RF)、條形碼和電子數(shù)據(jù)交換技術(shù)等。其中GIS技術(shù)起到一個非常重要的作用。GIS是一種以采集、貯存、管理、分析和描述整個或部分地球表面與空間地理分布有關(guān)數(shù)據(jù)的空間信息系統(tǒng)。在現(xiàn)代信息社會里,GIS作為一種集地理空間特征和各種統(tǒng)計信息為一體的特殊信息系統(tǒng),是信息高速公路上的節(jié)點和基礎(chǔ)設(shè)施,受到全社會的廣泛關(guān)注,成為目前國內(nèi)熱門的研究課題。GPRS,GPS技術(shù)的發(fā)展又為GIS數(shù)據(jù)的實時獲取和實時傳輸?shù)於藞?/p>
32、實的基礎(chǔ)?;贕IS的系統(tǒng)已經(jīng)開始在各個領(lǐng)域出現(xiàn)。尤其以交通運輸、物流、森林?jǐn)?shù)據(jù)分布等與地理數(shù)據(jù)關(guān)系最為緊密的領(lǐng)域為甚。在物流系統(tǒng)中,GIS技術(shù)可以在模型參考數(shù)據(jù)、車輛監(jiān)控和實時調(diào)度、監(jiān)控車輛位置與狀態(tài)、車輛導(dǎo)航以及選擇最佳路徑等大量涉及空間數(shù)據(jù)和屬性數(shù)據(jù)的世紀(jì)應(yīng)用中,提供有效的管理和科學(xué)決策依據(jù)[2]。</p><p> 對于基于C/S架構(gòu)的GIS系統(tǒng)來說,服務(wù)器負(fù)責(zé)收集實時的地理數(shù)據(jù),客戶端負(fù)責(zé)訪問。這種架
33、構(gòu)雖然能夠充分利用客戶端計算機的計算能力,降低服務(wù)器所承受到的壓力。但是弊端也是很明顯的,客戶端過分臃腫,數(shù)據(jù)完整性不可控,不能適應(yīng)復(fù)雜網(wǎng)絡(luò)環(huán)境,安全性得不到保障,功能可擴展性低,代碼維護困難重重和服務(wù)器資源浪費等。無法勝任分布式應(yīng)用系統(tǒng)的復(fù)雜性,客戶端軟件系統(tǒng)只能運行在單一操作系統(tǒng)平臺上,采用相同的網(wǎng)絡(luò)傳輸協(xié)議等局限都大大影響了軟件系統(tǒng)的可部署環(huán)境,這樣就增加了企業(yè)在硬件及網(wǎng)絡(luò)資源重復(fù)性投入的成本??蓴U展性受到限制,軟件系統(tǒng)被安裝在客
34、戶端,一旦軟件發(fā)現(xiàn)Bug,軟件需要升級,對軟件的修改將是企業(yè)的一筆不小的開支。對于GIS系統(tǒng)來說,數(shù)據(jù)源可能分布在多個不同地點,客戶端也分布在不同的地點,那么整個系統(tǒng)在物理架構(gòu)上來說就是一個分布式的系統(tǒng)。對于這種系統(tǒng)來說,要提高系統(tǒng)的運行效率、適應(yīng)復(fù)雜的網(wǎng)絡(luò)環(huán)境、降低維護費用,那么B/S架構(gòu)相對于C/S架構(gòu)有更大的潛力。</p><p> 隨著Web技術(shù)的發(fā)展,Web技術(shù)與GIS相結(jié)合產(chǎn)生的WebGIS成為GI
35、S技術(shù)發(fā)展的必然趨勢。相對于傳統(tǒng)的C/S架構(gòu)的GIS系統(tǒng)。WebGIS系統(tǒng)采用B/S架構(gòu)。部署和升級時只需要對服務(wù)器進(jìn)行操作,節(jié)省了企業(yè)的資源。目前Web軟件架構(gòu)的發(fā)展,使得B/S架構(gòu)已經(jīng)向多層架構(gòu)的方向發(fā)展,一般由客戶端、Web服務(wù)層、應(yīng)用服務(wù)層、數(shù)據(jù)層等組成??蛻舳思礊g覽器,負(fù)責(zé)用戶的輸入和結(jié)果的顯示;Web服務(wù)層提供JSP或者Servlet等的開發(fā)、部署和運行,為客戶端準(zhǔn)備前端顯示頁面代碼;應(yīng)用服務(wù)層實現(xiàn)企業(yè)業(yè)務(wù)邏輯和業(yè)務(wù)實體,并
36、提供開發(fā)、部署和運行環(huán)境,同時該層也提供對分布式網(wǎng)絡(luò)環(huán)境的支持,使得Web軟件架構(gòu)具備跨操作系統(tǒng)平臺和跨網(wǎng)絡(luò)傳輸協(xié)議等優(yōu)勢;數(shù)據(jù)層封裝了數(shù)據(jù)庫的底層操作,包括添加、查詢、修改和刪除等。B/S可分布式的架構(gòu)能夠明顯減輕各個服務(wù)器的負(fù)載,提高系統(tǒng)的整體運行速度。通過B/S架構(gòu)提供的WebService服務(wù),客戶端能夠利用JavaScript代碼控制對各個WebService的訪問順序,從而輕松地修改業(yè)務(wù)操作的實現(xiàn)流程,這對于業(yè)務(wù)流程比較相似
37、的物流企業(yè)來說,意味著開發(fā)出來的系統(tǒng)經(jīng)過簡單配置</p><p> 綜上所述,需要一套基于WebGIS的物流信息系統(tǒng)來優(yōu)化物流系統(tǒng)的流程,提高企業(yè)的運行效率,降低運營成本。</p><p> 課題研究成果應(yīng)用的實際意義</p><p> 本文研究的主要目的是實現(xiàn)一個Web客戶端到GIS數(shù)據(jù)源之間進(jìn)行消息傳輸?shù)耐ㄓ每蚣埽⒃诖嘶A(chǔ)上實現(xiàn)物流系統(tǒng)需求的功能。<
38、;/p><p> 由于各個企業(yè)有各自的業(yè)務(wù)流程和數(shù)據(jù)表示方法,平時開發(fā)的過程中需要對不同的企業(yè)實現(xiàn)不同的數(shù)據(jù)結(jié)構(gòu)和業(yè)務(wù)流程。而在系統(tǒng)開發(fā)的時候往往針對一個企業(yè)進(jìn)行數(shù)據(jù)定義和建模開發(fā)。這種開發(fā)方式偏重于應(yīng)用,沒有過多的考慮系統(tǒng)的復(fù)用。如果需求有了變化,往往要大面積地修改代碼,甚至是重新開發(fā)。這樣就浪費了大量的人力物力。要達(dá)到降低開發(fā)成本的目的,最直接的方法就是復(fù)用以前的系統(tǒng)。但是企業(yè)之間業(yè)務(wù)流程和數(shù)據(jù)表達(dá)方式的差異提
39、高了系統(tǒng)復(fù)用的門檻,降低了不同企業(yè)之間軟件復(fù)用的可能性。但是對于物流系統(tǒng)來說,它們處理貨物的業(yè)務(wù)流程過程中數(shù)據(jù)流向和處理處理方式是相同的,只是存在不多的差異。而在基于WebGIS的系統(tǒng)中,由于GIS數(shù)據(jù)源和Web客戶端的抽象化,使得它們與服務(wù)器之間的數(shù)據(jù)流動更加清晰。最終能夠整理出一份關(guān)于Web客戶端和服務(wù)器進(jìn)行交互的通用需求和一份物流系統(tǒng)貨物處理流程的通用需求。在軟件復(fù)用中,如果一系列的系統(tǒng)共享特定的領(lǐng)域中的明確需求,那么這一系列的系
40、統(tǒng)構(gòu)成軟件的產(chǎn)品線。它們之間能夠共享架構(gòu),從而縮短類似系統(tǒng)的開發(fā)時間,提高開發(fā)的效率[3]。所以本系統(tǒng)可以側(cè)重架構(gòu)設(shè)計,從而產(chǎn)生一個能夠復(fù)用的,支持GIS數(shù)據(jù)源</p><p> 本課題研究的系統(tǒng),就是要通過Web服務(wù)器在企業(yè)的不同GIS數(shù)據(jù)源和Web客戶單的管理人員之間搭建一個實時的數(shù)據(jù)傳輸和處理架構(gòu),產(chǎn)生適用于WebGIS系統(tǒng)的通用模板。并在此基礎(chǔ)上添加數(shù)據(jù)結(jié)構(gòu)和業(yè)務(wù)處理流程,實現(xiàn)物流企業(yè)中貨物輸入、線路定
41、義、車輛監(jiān)控、實時消息傳輸?shù)裙δ???紤]到物流企業(yè)需求之間的相似性,本系統(tǒng)的構(gòu)建的框架可以經(jīng)過簡單的配置并添加適當(dāng)?shù)臄?shù)據(jù)結(jié)構(gòu),直接應(yīng)用到其他的企業(yè)中。</p><p> 本文的內(nèi)容及主要工作</p><p> 本文在分析介紹了WebGIS技術(shù),WMS/WMF協(xié)議、WebGIS相關(guān)的組件的基礎(chǔ)上,基于物流系統(tǒng)的需求特點,介紹了GIS數(shù)據(jù)轉(zhuǎn)發(fā)傳輸和處理架構(gòu),并且實現(xiàn)了物流系統(tǒng)的基本功能。&l
42、t;/p><p> 各章的內(nèi)容組織如下:</p><p> 第2章介紹了GIS技術(shù)、WebGIS技術(shù)的協(xié)議和開源平臺、Ajax技術(shù)以及Spring框架技術(shù);</p><p> 第3章分析了系統(tǒng)的開發(fā)環(huán)境,利用用例建模分析系統(tǒng)的功能需求,并且根據(jù)實際情況補充了部分需求,提出了非功能性需求,并描述了系統(tǒng)術(shù)語表;</p><p> 第4章對系統(tǒng)
43、進(jìn)行總體設(shè)計,并對服務(wù)層、Web服務(wù)層、數(shù)據(jù)訪問層、消息處理部分、socket控制層等進(jìn)行詳細(xì)設(shè)計,對系統(tǒng)中貨物運輸、線路編輯、權(quán)限控制、發(fā)送貨物等功能進(jìn)行了詳細(xì)設(shè)計,對介紹了系統(tǒng)中數(shù)據(jù)庫表;</p><p> 第5章主要介紹了JavaScript語言的面向?qū)ο蠛褪录?qū)動的實現(xiàn),展示了Web客戶端根據(jù)相關(guān)協(xié)議與服務(wù)器交互的流程,并介紹了客戶端框架的實現(xiàn)以及定時更新機制的實現(xiàn)。最后是服務(wù)器端的具體實現(xiàn),展示了安全
44、控制機制下用戶訪問服務(wù)器的流程、貨物從發(fā)貨到最后提貨的整個處理流程,重點介紹了消息在管理人員、服務(wù)器端、車輛終端之間進(jìn)行交互的傳輸和處理流程;</p><p> 第6章介紹了利用工具進(jìn)行測試的情況,并對出現(xiàn)的錯誤進(jìn)行了分析解決;</p><p> 第7章結(jié)論部分是對整個論文工作的總結(jié)以及下一步工作的展望,指出我們工作中有待改進(jìn)的地方,同時指明了下一步的研究方向。</p>
45、<p><b> 相關(guān)技術(shù)簡介</b></p><p><b> GIS 技術(shù)</b></p><p> GIS是以采集、存儲、管理、分析、描述和應(yīng)用整個或部分地球表面(包括大氣層在內(nèi))與空間和地理分布有關(guān)的數(shù)據(jù)的計算機系統(tǒng)。它由硬件、軟件、數(shù)據(jù)和用戶有機結(jié)合而構(gòu)成。GIS要實現(xiàn)的五個基本功能為:數(shù)據(jù)輸入、數(shù)據(jù)編輯、數(shù)據(jù)存儲與管理
46、、空間查詢與空間分析以及圖形輸出與交互操作。</p><p> GIS始于60年代的加拿大與美國,爾后各國相繼投入了大量的研究工作,自80年代末以來,隨著計算機技術(shù)的飛速發(fā)展,地理信息的處理、分析手段日趨先進(jìn),GIS技術(shù)日臻成熟,已廣泛地應(yīng)用于環(huán)境、資源、石油、電力、土地、交通、公安、急救、航空、市政治理、城市規(guī)劃、經(jīng)濟咨詢、災(zāi)難損失猜測、投資評價、政府治理和軍事等與地理坐標(biāo)相關(guān)的幾乎所有領(lǐng)域。</p&g
47、t;<p> GIS技術(shù)依托的主要工具和平臺是計算機及其相關(guān)設(shè)備。進(jìn)入90年代以來,隨著計算機技術(shù)的發(fā)展,計算機微處理器的處理速度愈來愈快,性能價格比更高;其存儲器能實現(xiàn)將大型文件映射至內(nèi)存的能力,并且能存儲海量數(shù)據(jù)。此外,隨著多媒體技術(shù)、空間技術(shù)、虛擬實景、數(shù)字測繪技術(shù)、數(shù)據(jù)倉庫技術(shù)、計算機圖形技術(shù)、三維圖形芯片、大容量光盤技術(shù)及寬頻光纖通訊技術(shù)的突破性進(jìn)展,消除數(shù)據(jù)通訊瓶頸的衛(wèi)星互聯(lián)網(wǎng)的建立,以及能夠提供接近實時對地
48、觀測圖像的高分辨、高光譜、短周期遙感衛(wèi)星的大量發(fā)射,這些為GIS技術(shù)的廣泛、深入應(yīng)用展示了更加光明的前景。同時,也使當(dāng)前的GIS已不能滿足信息時代、數(shù)字時代的要求,目前GIS總體上呈現(xiàn)網(wǎng)絡(luò)化、開放性、虛擬現(xiàn)實、集成化、空間多維性等發(fā)展趨勢。</p><p><b> WebGIS 技術(shù)</b></p><p><b> WebGIS介紹</b>
49、;</p><p> WebGIS是GIS技術(shù)與WWW技術(shù)的結(jié)合,是在Internet網(wǎng)絡(luò)環(huán)境下的一種傳輸、存儲、處理、分析和顯示與應(yīng)用地理信息的計算機系統(tǒng)。稱之為WebGIS的原因是大多數(shù)客戶端應(yīng)用采用了WWW協(xié)議。在Internet的支持下,根據(jù)TCP/IP和HTTP協(xié)議,WebGIS把支持標(biāo)準(zhǔn)的HTML的瀏覽器作為統(tǒng)一的客戶端,所以狹義地講WebGIS是一種在Internet上發(fā)展起來的新技術(shù),其核心是將
50、GIS功能嵌入到滿足HTTP和TCP/IP標(biāo)準(zhǔn)的Internet應(yīng)用體系中,實現(xiàn)Internet環(huán)境下地理信息的有效管理和處理。與傳統(tǒng)的地理信息系統(tǒng)相比較,WebGIS有如下特點:</p><p> (1) 更廣泛的客戶訪問范圍??蛻艨梢酝瑫r訪問多個位于不同地方的服務(wù)器上的最新數(shù)據(jù),而Internet所特有的優(yōu)勢大大擴展了GIS的數(shù)據(jù)的處理能力,增強了空間數(shù)據(jù)的時效性。</p><p>
51、 (2) 客戶端的平臺獨立性。無論客戶機是何種操作系統(tǒng),只要支持通用的Web瀏覽器,用戶就可以訪問GIS數(shù)據(jù)及服務(wù)器所提供的服務(wù)。</p><p> (3) 更簡單的操作。要推廣GIS,使GIS系統(tǒng)為廣大的普通用戶所接受,而不僅僅局限于少數(shù)受過專業(yè)培訓(xùn)的用戶,就要降低對系統(tǒng)的操作難度。通過Web瀏覽器提供友好的用戶界面無疑是一種很好的選擇。</p><p> (4) 更高效的計算負(fù)載
52、平衡。傳統(tǒng)的GIS大都使用文件服務(wù)器結(jié)構(gòu)的處理方式,其處理能力完全依賴客戶端,效率較低。而當(dāng)今的一些高級的WebGIS能充分利用網(wǎng)絡(luò)資源,將復(fù)雜的處理交由服務(wù)器處理,而簡單的操作則由客戶端直接完成。這種計算能靈活地在服務(wù)器端和客戶端之間合理地分配處理任務(wù),提高網(wǎng)絡(luò)資源的利用效率,提高了系統(tǒng)的性能。</p><p> (5) 分布式的系統(tǒng)。Internet的一個特點就是它可以訪問分布式數(shù)據(jù)庫和執(zhí)行分布式處理,即信
53、息和應(yīng)用可以部署在跨越整個Internet的不同計算機上。GIS數(shù)據(jù)和分析工具是獨立的組件和模塊,WebGIS利用Internet的這種分布式系統(tǒng)把GIS數(shù)據(jù)和分析工具部署在網(wǎng)絡(luò)不同的計算機上,用戶可以從網(wǎng)絡(luò)的任何地方訪問這些數(shù)據(jù)和應(yīng)用程序,不需要在本地計算機上安裝GIS數(shù)據(jù)和應(yīng)用程序,只要把請求發(fā)送到服務(wù)器,服務(wù)器就會把數(shù)據(jù)和分析工具模塊傳送給用戶,達(dá)到實時部署的性能。</p><p> (6) 動態(tài)性。由于
54、WebGIS是分布式系統(tǒng),數(shù)據(jù)與應(yīng)用程序部署在不同的計算機上,隨時可能被管理員更新,對于Internet上的每一個用戶來說,都能得到最新的數(shù)據(jù)和應(yīng)用程序的最新版本,只要數(shù)據(jù)源發(fā)生變化,和數(shù)據(jù)源的動態(tài)連接將保持?jǐn)?shù)據(jù)的實時性。</p><p> (7) 交互性。WebGIS可使用戶在Internet上操作GIS地圖和數(shù)據(jù),用Web瀏覽器(IE,Netscape 等)執(zhí)行部分基本的GIS功能:如縮放,漫游,查詢和標(biāo)注
55、,甚至可以執(zhí)行空間查詢:如“離你最近的旅館或飯店在哪兒”,或者更先進(jìn)的空間分析:比如緩沖分析和網(wǎng)絡(luò)分析等。在Web上使用WebGIS就和在本地計算機上使用桌面GIS軟件一樣。</p><p> (8) 經(jīng)濟性。一般專業(yè)的GIS軟件非常昂貴,而對于普通用戶來說,只使用一些最基本的功能,想購買專業(yè)軟件顯得不太可能,也不經(jīng)濟。WebGIS在客戶端只需要瀏覽器,GIS數(shù)據(jù)和GIS軟件的管理與維護基本上由服務(wù)器完成,因此
56、系統(tǒng)成本比以往全套GIS軟件平臺要少得多,客戶端軟件的簡單化節(jié)省的維護費用也是很可觀的。</p><p> WebGIS協(xié)議介紹</p><p> 開放式地理信息系統(tǒng)協(xié)會(Open GIS Consortium, OGC)是非營利、國際自發(fā)性、研究地理信息系統(tǒng)標(biāo)準(zhǔn)的國際組織。OGC所提供的規(guī)范是幫助GIS開發(fā)者創(chuàng)造一個高效、無隔閡和透明的地理信息系統(tǒng)使用、分析、處理的環(huán)境[5]。開放式
57、地理信息系統(tǒng)(OpenGIS)正是由OGC提出的一個為了實現(xiàn)開放式地理信息系統(tǒng)而提出的開放式地理空間數(shù)據(jù)互操作規(guī)范。按照OpenGIS的規(guī)范,可以構(gòu)造一個能獲取分布式地理空間數(shù)據(jù)和空間服務(wù)資源的軟件框架。OpenGIS給全世界的軟件開發(fā)商一個詳細(xì)的通用界面模板,使得不同開發(fā)商依照OpenGIS開發(fā)出來的不同GIS軟件能夠進(jìn)行互操作。OpenGIS圍繞著地理空間信息共享和提供地理空間處理服務(wù)兩個技術(shù)目標(biāo),主要包括三部分內(nèi)容:開放式地理空間
58、數(shù)據(jù)模型、OpenGIS服務(wù)模型和信息團體模型。其中與WebGIS有關(guān)的協(xié)議主要有:GML(Geography Markup Language),WFS(Web Feature Service),WMS(Web Map Service),SLD(Styled Layer Descriptor),WCS(Web Cove</p><p> 其中GML、WMS、WFS和WCS可以作為Web服務(wù)的空間數(shù)據(jù)服務(wù)規(guī)范,又
59、可以作為空間數(shù)據(jù)的互操作實現(xiàn)。只要某一個GIS軟件支持這個接口,部署在本地服務(wù)器上,其他GIS軟件就可以通過這個接口得到所需要的數(shù)據(jù)。</p><p><b> GML協(xié)議</b></p><p> GML是一種用于建模、傳輸和存儲地理及與地理相關(guān)信息的XML編碼語言,它包括了地理要素(Feature)與層(Coverage)的空間與非空間特征。GML建立在W3C
60、系列標(biāo)準(zhǔn)之上,以一種互聯(lián)網(wǎng)上容易共享的方式來描述、表達(dá)地理信息,是第一個被GIS界廣泛接受的元標(biāo)記語言。在這之前開發(fā)的各種用于存儲和交換地理信息的文件格式或標(biāo)準(zhǔn),由于缺少相應(yīng)的支持工具,而沒有被廣泛接受。GML的一個重要優(yōu)勢就是它能夠讓開發(fā)者或用戶非常靈活地使用已被廣泛接受的XML技術(shù),它建立在XML、XML Schema、XLink和XPointer基礎(chǔ)之上,GML數(shù)據(jù)能夠很容易地與非空間數(shù)據(jù)集成使用。GML使用XML對地理數(shù)據(jù)進(jìn)行編
61、碼,為開發(fā)商和用戶提供了一種開放的、中立于任何廠商的地理數(shù)據(jù)建??蚣?,使地理信息能夠在不同領(lǐng)域、不同部門進(jìn)行語義共享。 </p><p> GML采用要素來描述地理實體和地理現(xiàn)象,GML要素是通過其屬性(property)來描述的,這些屬性包括:空間屬性、時態(tài)屬性及其他非空間時態(tài)屬性。</p><p> OGC 先后推出了3個版本的GML,GML 1.0 版本于2000年4月正式推出
62、,GML 2.0 版本于2001年2月推出,GML 2.12 版本于2002年9月推出,2003 年1月推出GML 3.0 版本。3.0版增加了對復(fù)雜的幾何實體、拓?fù)?、空間參照系統(tǒng)、元數(shù)據(jù)、時間特征和動態(tài)要素等的支持,使其更加適合描述現(xiàn)實世界問題。GML作為一個空間數(shù)據(jù)編碼規(guī)范,它并沒有強制采用它的用戶使用規(guī)定的XML標(biāo)識,而是提供了一套基本的標(biāo)簽、公共的數(shù)據(jù)模型,以及用戶構(gòu)建應(yīng)用模式(GML Application Schemas)的
63、機制[7]。</p><p><b> WMS協(xié)議</b></p><p> WMS從動態(tài)的地理信息中位置數(shù)據(jù),產(chǎn)生空間參考數(shù)據(jù)的地圖。地圖的格式可以為PNG/GIF/JPEG/SVG/WebCGM中的任意一種。這個規(guī)范定義了三個操作:GetCapabilities操作返回XML格式的服務(wù)級元數(shù)據(jù),它是對服務(wù)信息內(nèi)容和可接受請求參數(shù)的一種描述;GetMap用來從地
64、圖服務(wù)器得到一副具有特定的地理位置坐標(biāo)范圍的地圖圖像,在構(gòu)造請求時需要設(shè)置圖層名稱、坐標(biāo)范圍、返回圖像的高寬和格式等;GetFeatureInfo是WMS可選的服務(wù),用來提供進(jìn)一步查詢地圖上的某些特殊要素的信息的接口[8]。</p><p><b> WFS協(xié)議</b></p><p> WFS向用戶提供使用GML編碼的地理空間要素數(shù)據(jù),并支持在HTTP協(xié)議的分布
65、式計算機平臺上對地理要素進(jìn)行查詢、插入、更新和刪除操作等。這個規(guī)范定義了五個操作:GetCapabilities返回WFS性能描述文檔(用XML描述);DescribeFeatureType向用戶提供一個列表,表示W(wǎng)FS服務(wù)器能提供的服務(wù)的要素類型。列表還定義了請求具體要素實例時的請求格式以及輸出時生成要素實例的方法。;GetFeature為一個獲取要素實例的請求提供服務(wù);Transaction為事務(wù)請求提供服務(wù);LockFeature
66、處理在一個事務(wù)期間對一個或多個要素類型實例上鎖的請求[9]。</p><p> 在具體的GIS應(yīng)用當(dāng)中,WFS經(jīng)常用來實現(xiàn)對地圖上數(shù)據(jù)的查詢與修改,并經(jīng)常與系統(tǒng)的領(lǐng)域?qū)又械哪P瓦M(jìn)行交互。</p><p><b> WCS協(xié)議</b></p><p> WCS協(xié)議是面向空間影像數(shù)據(jù)的,它將包含地理位置值的地理空間數(shù)據(jù)作為“覆蓋(covera
67、ge)”在網(wǎng)上相互交換。WCS規(guī)范由三種操作組成:GetCapabilities,GetCoverage和DescribeCoverageType。GetCapabilities操作返回描述服務(wù)和數(shù)據(jù)集的XML文檔。WCS中的GetCoverage操作是在GetCapabilities確定什么樣的查詢可以執(zhí)行、什么樣的數(shù)據(jù)能夠獲取之后執(zhí)行的,它使用通用的覆蓋格式返回地理位置的值或?qū)傩???蛻舳四軌蛑付ǐ@取哪些覆蓋,以及對空間和非空間的查詢
68、進(jìn)行約束。DescribeCoverageType操作允許客戶端請求由具體的WCS服務(wù)器提供的任一覆蓋層的完全描述[10]。在MapBuilder庫文件中,利用WCS進(jìn)行地理空間數(shù)據(jù)數(shù)據(jù)交換。</p><p> WebGIS的開源平臺</p><p> GeoServer 地圖服務(wù)器</p><p> GeoServer是全面遵循OGC開放標(biāo)準(zhǔn)的J2EE實現(xiàn),
69、可以方便地發(fā)布地圖數(shù)據(jù),并且允許用戶對特征數(shù)據(jù)進(jìn)行更新、刪除、插入等操作,通過GeoServer能夠比較容易地在用戶之間迅速共享空間地理信息。GeoServer支持PostGIS、oracle,mysql等數(shù)據(jù)庫數(shù)據(jù)源以及shapefile,mapinfo等格式的文件數(shù)據(jù)源;能夠運行在任何基于J2EE/Servlet容器上;能夠通過WMS將數(shù)據(jù)采用maps/images方式發(fā)布,也可以通過WFS協(xié)議直接發(fā)布實際數(shù)據(jù)。</p>
70、<p> GeoServer集成了GeoTools工具。GeoTools 是一款基于 Java 的開源 GIS 工具集,允許用戶對地理數(shù)據(jù)進(jìn)行基本操作。通過 GeoTools 的各種接口和 helper 類,可以寫入新的數(shù)據(jù)格式,通過 GeoTools 為 GeoServer 提供的插件,在不進(jìn)行重新編譯的情況下,可以讓 GeoServer 支持更多的數(shù)據(jù)格式,甚至只需要通過 GUI 的 option 設(shè)置即可。<
71、/p><p> PostGIS數(shù)據(jù)庫管理系統(tǒng)</p><p> PostGIS是由Refractions Research Inc開發(fā)的,它是對象關(guān)系型數(shù)據(jù)庫系統(tǒng)PostgreSQL的一個擴展,允許數(shù)據(jù)庫存儲處理GIS對象。PostGIS提供了基于WKT和WKB格式的EWKT和EWKB格式,存儲與訪問Geometry對象的功能;同時,也提供了豐富的維護、檢索和空間運算函數(shù),確保能對矢量格式
72、的空間數(shù)據(jù)及其屬性數(shù)據(jù)進(jìn)行有效地組織、索引,并能根據(jù)用戶需求進(jìn)行自定義函數(shù)的擴充。PostGIS旨在支持開發(fā)PostGIS以支持重要的GIS功能,包括對OpenGIS的完整支持,高級拓?fù)涞臉?gòu)建,用于顯示和編輯GIS數(shù)據(jù)的左面用戶界面工具和基于網(wǎng)絡(luò)的訪問工具。</p><p> 與單純使用PostgreSQL相比,開發(fā)人員應(yīng)用PostGIS更易于實現(xiàn)空間幾何對象,PostGIS主要優(yōu)點有:</p>
73、<p> (1) 在3D擴展下支持OpenGIS的WKT空間數(shù)據(jù)對象,支持3DZ、3DM、4D坐標(biāo)表示。</p><p> (2) 支持SQL及空間查詢處理空間數(shù)據(jù)對象。</p><p> (3) 提供大量空間算子進(jìn)行空間操作,并提供了支持多種標(biāo)準(zhǔn)投影類型的開源投影庫(Proj4)。</p><p> PostGIS支持的GIS對象是OGC定義的“
74、簡單要素”的超集[11]。</p><p> MapBuilder</p><p> MapBuilder是一個基于Ajax(Asynchronous JavaScript and XML)技術(shù)的地圖處理顯示的Web開源客戶端。它支持Internet Explorer6+、Mozilla1.3+、Netscape6+等瀏覽器。支持WMS和WFS-T服務(wù)。它根據(jù)WMS協(xié)議實現(xiàn)了地圖顯示、
75、縮放、移動等操作,并且能夠利用WFS-T協(xié)議修改服務(wù)器上的地圖數(shù)據(jù)。通過簡單的配置,MapBuilder中的組件能夠輕松的嵌入到網(wǎng)頁文件中。</p><p> 在具體實現(xiàn)上采用MVC模式,MVC是Model View Controller(模型,視圖,控制器)的縮寫。這個模式的目的是為了簡化應(yīng)用程式的實現(xiàn)。此模式包括三個獨立組件。Model 表示數(shù)據(jù),用戶 期待看到的數(shù)據(jù)。View 負(fù)責(zé)展示模型。視圖在文本編輯
76、器中可能按照適當(dāng)格式顯示一段文本,在多數(shù)情況下,試圖在Web應(yīng)用中生成HTML,以便客戶端瀏覽器解釋瀏覽。Controller 是一段邏輯,負(fù)責(zé)處理請求和按照客戶請求行動,創(chuàng)建適當(dāng)?shù)哪P停⑵鋫鬟f到視圖以供顯示。在MapBuilder中分別對應(yīng)于模式(Model)、飾件(Widget)、工具(Tool)三種類型的JavaScript對象,實現(xiàn)了數(shù)據(jù)管理、信息表達(dá)和交互操作的模塊化。</p><p> MVC模
77、式中的一個重要問題是數(shù)據(jù)的組織管理,對于MapBuilder而言就是數(shù)據(jù)模型。MapBuilder不提供通常的點、線、面等幾何對象的封裝,整個數(shù)據(jù)流完全通過XML配置與解析進(jìn)行管理,其優(yōu)點是標(biāo)準(zhǔn)化程度高、客戶端使用便捷、無需編碼。這些數(shù)據(jù)流包括系統(tǒng)配置、地圖配置以及服務(wù)器端交互所產(chǎn)生的各種GML數(shù)據(jù)。其中系統(tǒng)配置文件按照資源描述框架(Resource Description Framework, RDF)語法以O(shè)bject-Proper
78、ty-Value格式定義所需對象,每個對象被賦予一個唯一標(biāo)識的ID,通過ID在全局域中可直接以config.objects.id來應(yīng)用指定的對象實例。地圖配置文件則按照OGC的WMC(Web Map Context)規(guī)范定義地圖所需各參數(shù),所有配置文件都將在頁面加載時被自動解析,映射成為所定義的對象實例。系統(tǒng)配置自身被映射為模型對象Config,所有模型對象都派生自抽象類ModelBase,統(tǒng)一調(diào)用GET方法獲取數(shù)據(jù)信息,并以SET方法
79、設(shè)置、修改模型信息和狀態(tài)。GML數(shù)據(jù)僅作為中間交換數(shù)據(jù)存在,通常需要進(jìn)行XPath或XSLT轉(zhuǎn)換處理。</p><p> MVC模式的另一個重要問題就是消息的傳遞和相應(yīng)。MapBuilder中由兩種消息類型:一種是瀏覽器定義的各類系統(tǒng)消息,如鼠標(biāo)按下事件等;另一種是自定義消息,如加載模型事件loadModel等。系統(tǒng)消息由派生自ToolBase類的工具對象處理,如響應(yīng)鼠標(biāo)點擊事件。這些工具對象常作為飾件對象的一
80、個屬性配置在系統(tǒng)文件。事件對象則通過DIV等標(biāo)記與網(wǎng)頁建立關(guān)聯(lián)來展現(xiàn)模型信息,一般派生自WidgetBase類。WidgetBase類與ModelBase類擁有共同的父類Listener,因此飾件對象注冊給一個模型對象即可通過調(diào)用事件監(jiān)聽器互通自定義信息。模型的修改會影響飾件狀態(tài),飾件同樣可以將系統(tǒng)事件的影響傳遞給模型處理[12]。</p><p><b> Ajax 架構(gòu)</b><
81、;/p><p> Ajax是一種創(chuàng)建交互網(wǎng)頁的技術(shù),由Adaptive Path的咨詢顧問Jesse James Garrett首先提出。它不是單一的技術(shù),而是JavaScript、CSS、DOM、XMLHttpRequest對象的集合。其中JavaScript是通用的腳本語言,Web瀏覽器中嵌入的JavaScript解釋器允許通過程序與瀏覽器的很多內(nèi)建功能進(jìn)行交互。CSS(層疊樣式表)為Web頁面元素提供了一個可
82、重用的可視化樣式的定義方法。它提供了簡單而強大的方法,以一致的方式定義和使用可視化式樣。DOM(文檔對象模型)以一組可以使用JavaScript操作的可編程對象展示出Web頁面的結(jié)構(gòu)。XMLHttpRequest對象允許Web程序從Web服務(wù)器以后臺活動的方式獲取數(shù)據(jù)。在Ajax的使用當(dāng)中,JavaScript定義了業(yè)務(wù)規(guī)則和程序流程。應(yīng)用程序使用XMLHttpRequest對象以后臺方式從服務(wù)器獲得數(shù)據(jù)。DOM對象根據(jù)服務(wù)器得到的數(shù)據(jù)
83、修改客戶端Web頁面中的元素值。CSS利用規(guī)定好的樣式將DOM對象顯示到瀏覽器中[13]。</p><p><b> Spring 架構(gòu)</b></p><p> Spring是一個開源的架構(gòu),由Rod Johnson開發(fā)并在他的著作Expert One-on-One: J2EE Design and Development中進(jìn)行描述。它用來簡化企業(yè)應(yīng)用程序的開發(fā)
84、,使得程序僅僅利用JavaBean就能夠完成以前只能由EJB來完成的工作。任何的Java應(yīng)用程序都能從Spring框架的簡單、可測試性和松耦合中得到好處,而不僅僅限定為服務(wù)器端的程序。在J2EE中,EJB的原意是為了解決諸如分布式對象和遠(yuǎn)程事務(wù)等問題而設(shè)計的復(fù)雜的組件。對于復(fù)雜度不高的企業(yè)項目,在開發(fā)時也必須要承擔(dān)EJB的眾多的Java源文件、繁雜的部署描述以及重型容器等不便。即使要解決的問題很簡單,EJB的使用也會使得企業(yè)系統(tǒng)的復(fù)雜度
85、大大增加。所以使用Spring來替代EJB,它使得系統(tǒng)的復(fù)雜度依賴于要解決的問題,減少了容器對設(shè)計的侵蝕。在簡化開發(fā)的同時,它盡量提供了和EJB相同的功能。Spring的信條是:J2EE 應(yīng)當(dāng)是易于使用的。</p><p> 簡單來說,Spring是一個輕型的、控制反轉(zhuǎn)的并且支持面向方面的容器框架[14]。輕量級的容器意味著對程序代碼做最少的改動,就可以獲得Spring核心帶來的好處。Spring框架的核心基于
86、依賴注入(Dependency Injection, DI)技術(shù)。在Spring中,所有類資源都被應(yīng)用為Bean,只需要遵循JavaBean的命名規(guī)則,DI機制就可以類屬性配置操作與代碼相分離。對于基于接口編程的程序,通過采用DI,為基于接口的設(shè)計而編寫的輔助代碼大大減少,接近于零。Spring框架中DI帶來的好處主要有:</p><p> (1) 減少“粘合”代碼。DI可以消除為了連接應(yīng)用程序的各個部分而編寫
87、的大量代碼。</p><p> (2) 依賴的外置化。Spring中DI的通過外置的配置文件來實現(xiàn),所以可以將依賴外置化。要改變依賴只需要修改配置文件而不需要修改代碼。</p><p> (3) 在統(tǒng)一的地方管理依賴。采用傳統(tǒng)方式管理依賴時,依賴關(guān)系會在代碼中散布開,改變它們通常會帶來問題。當(dāng)時用DI的時候,所有關(guān)于依賴的信息都通過一個簡單的庫進(jìn)行管理,使得管理依賴變得既簡單又不容易出
88、錯。</p><p> (4) 提高可測試性。當(dāng)面向DI設(shè)計類時,類之間的依賴可以方便的進(jìn)行改變。這一點在系統(tǒng)進(jìn)行測試時特別方便[15]。</p><p> 除了DI之外,Spring框架還提供:面向方面(AOP)編程機制、對數(shù)據(jù)訪問的優(yōu)化、事務(wù)管理、Web層的MVC架構(gòu)、簡化整合J2EE功能、遠(yuǎn)程訪問(Demoting)支持、Mail支持、計劃任務(wù)支持以及源代碼級的Metadata(
89、元數(shù)據(jù))等功能。</p><p><b> 本章小結(jié)</b></p><p> 本章首先對GIS技術(shù)進(jìn)行了介紹,包括GIS技術(shù)的基本功能、應(yīng)用范圍、以及將來的發(fā)展趨勢等。然后介紹了WebGIS,說明了WebGIS的概念和優(yōu)點;介紹了OGC組織以及它所提出來的GML、WMS、WFS、WCS等WebGIS所用到的OpenGIS協(xié)議,分析了每個協(xié)議的作用和相互的關(guān)系;同
90、時介紹了支持WebGIS開發(fā)的開源平臺,包括WebGIS服務(wù)器軟件GeoServer、支持GIS操作的數(shù)據(jù)庫PostGIS以及實現(xiàn)了WMS/WFS協(xié)議采用MVC模式架構(gòu)的MapBuilder地圖操作組件。最后對用于Web2.0開發(fā)的Ajax架構(gòu),以及用于簡化J2EE開發(fā)的Spring做了介紹。</p><p> 由本章的分析可知,J2EE平臺下的WebGIS開發(fā)的協(xié)議已經(jīng)漸漸規(guī)范,有利于GIS系統(tǒng)的開發(fā)和不同系
91、統(tǒng)的相互訪問;支持軟件也日漸增多,功能越發(fā)強大。其中Spring框架的出現(xiàn)更使得J2EE服務(wù)器編程變得愈發(fā)簡單化和自動化。</p><p><b> 需求分析</b></p><p> 需求分析是軟件開發(fā)流程中重要的一個環(huán)節(jié),需求分析的基本任務(wù)是根據(jù)用戶的需求,準(zhǔn)確定義要完成的系統(tǒng)的目標(biāo),回答系統(tǒng)必須“做什么”的問題。它的主要用途是明確系統(tǒng)需求,是用戶和開發(fā)人員之
92、間進(jìn)行討論的基礎(chǔ),并作為系統(tǒng)設(shè)計、實現(xiàn)以及測試的依據(jù)。</p><p> 只有準(zhǔn)確全面的需求獲取與分析才能保證系統(tǒng)設(shè)計、系統(tǒng)實現(xiàn)的順利進(jìn)行,為后期測試提供必要的支持。在參考了現(xiàn)有的GIS物流監(jiān)控系統(tǒng)的功能,并且考慮到了系統(tǒng)的擴展性和成本的基礎(chǔ)上,最后制定了本系統(tǒng)的具體需求。</p><p><b> 系統(tǒng)實現(xiàn)目標(biāo)</b></p><p>
93、 物流企業(yè)中,首先要對貨物從發(fā)貨人發(fā)送貨物到收貨人提取貨物的整個過程進(jìn)行管理和記錄,要求能夠隨時了解貨物的位置、狀態(tài)等屬性。同時管理人員通過系統(tǒng)能夠獲取企業(yè)里運輸車輛的位置、速度、方向、所載貨物等參數(shù),并能夠發(fā)送命令給車輛,實時監(jiān)控和管理整個貨物運輸流程。</p><p> 為保證物流系統(tǒng)能夠有效地為物流企業(yè)管理人員服務(wù),從功能上必須達(dá)到以下目標(biāo):</p><p> (1) 必須實現(xiàn)物
94、流企業(yè)中業(yè)務(wù)流程的所有必需功能。作為物流企業(yè)的管理軟件,系統(tǒng)必需能夠?qū)崿F(xiàn)諸如發(fā)送貨物、運輸貨物、裝載貨物、卸載貨物、車輛線路編輯等功能。保證系統(tǒng)實現(xiàn)的功能的有效性。</p><p> (2) 必須保證管理人員得到信息的及時性和真實性。管理人員作為整個系統(tǒng)的調(diào)度者,系統(tǒng)的信息必須及時地顯示給管理人員。對于重要的信息,系統(tǒng)應(yīng)該使用彈出警告窗口、修改顯示信息的字體顏色等手段引起管理人員的注意,保證系統(tǒng)調(diào)度的及時性。&
95、lt;/p><p> (3) 必須保證管理人員和運輸車輛之間進(jìn)行有效地、及時地通信。對于物流系統(tǒng)來說,系統(tǒng)的實時調(diào)度和管理是十分重要的,其中對車輛的調(diào)度尤其重要。所以,要保證管理人員和運輸車輛之間通信的及時性,提高系統(tǒng)調(diào)度的效率。</p><p><b> 系統(tǒng)運行環(huán)境</b></p><p> 為了充分使用物流企業(yè)的現(xiàn)有軟硬件資源,在保障物
96、流信息系統(tǒng)穩(wěn)定、高效運行的前提下,達(dá)到降低成本的目的。根據(jù)系統(tǒng)需求,設(shè)定了物流信息系統(tǒng)的運行環(huán)境。</p><p><b> 網(wǎng)絡(luò)環(huán)境:</b></p><p> 服務(wù)器和操作主機都需要采用Internet,車輛終端通過GPRS-Internet網(wǎng)關(guān)最終連接到Internet。</p><p><b> 硬件環(huán)境:</b&
97、gt;</p><p> (1) 服務(wù)器主機配置:CPU使用Intel P 4 Xeon, 雙CPU,內(nèi)存為2GB,選用2塊120GB的SCSI硬盤進(jìn)行同時讀寫。</p><p> (2) 客戶端機器配置:CPU最低Intel PIII 800MHz以上,內(nèi)存128MB以上。</p><p> (3) 車輛終端配置:每個車輛配置GPS數(shù)據(jù)收發(fā)器一個,用來獲取G
98、PS數(shù)據(jù),通過GPRS網(wǎng)絡(luò)和服務(wù)器進(jìn)行通信。</p><p> (4) 其他配置:GPRS-Internet數(shù)據(jù)轉(zhuǎn)換網(wǎng)關(guān)若干,用來將GPRS網(wǎng)絡(luò)中車輛數(shù)據(jù)轉(zhuǎn)換為Internet網(wǎng)絡(luò)中的數(shù)據(jù)。</p><p><b> 軟件環(huán)境:</b></p><p> 服務(wù)器: Windows 2000 服務(wù)器版操作系統(tǒng),Tomcat5.5服務(wù)器,Ge
99、oServer1.5.0地圖服務(wù)器,PostGIS1.2.1數(shù)據(jù)庫。</p><p> 客戶端:Windows2000操作系統(tǒng)以上,IE6.0以上、Mozilla1.3以上或者Netscape6以上。</p><p><b> 系統(tǒng)的開發(fā)環(huán)境</b></p><p> 考慮到系統(tǒng)成本問題,全部采用開源軟件和框架來構(gòu)建此系統(tǒng)。相對來說,開源
100、軟件成本低,功能相對簡單。</p><p> 服務(wù)器端軟件環(huán)境:Web服務(wù)器采用Tomcat5.5,它部署和使用起來都很方便,支持的功能對本系統(tǒng)來說已經(jīng)足夠。地圖服務(wù)器采用GeoServer1.5.0,它是一個全面支持OGC開放性協(xié)議的開源地圖服務(wù)器,能夠分別以圖片和實際數(shù)據(jù)的方式發(fā)布地圖數(shù)據(jù)。數(shù)據(jù)庫服務(wù)器采用PostGIS1.2.1,它是對PostgreSQL8.2的補充,有豐富的數(shù)據(jù)類型和處理地理數(shù)據(jù)的函數(shù)
101、,而且GeoServer與PostGIS之間的操作經(jīng)過一定的優(yōu)化。</p><p> 客戶端環(huán)境搭建:地圖顯示采用MapBuilder地圖操作組件,它是由Javascript語言實現(xiàn)的一個庫文件,可以方便的嵌入到網(wǎng)頁中去。系統(tǒng)信息實時顯示與實時更新的實現(xiàn),需要采用Ajax技術(shù)的支持。</p><p> 開發(fā)工具與支持環(huán)境:系統(tǒng)開發(fā)采用Eclipse??紤]到系統(tǒng)的擴展性和實體類的獨立性,
102、采用Spring作為J2EE實現(xiàn)的服務(wù)器端容器,數(shù)據(jù)庫訪問則采用Ibatis組件實現(xiàn)。這些開源軟件的采用,降低了系統(tǒng)開發(fā)難度,提高了軟件的可復(fù)用性。</p><p><b> 功能性需求描述</b></p><p> 在面向?qū)ο蟮南到y(tǒng)分析中,獲取功能需求的最常用的技術(shù)就是用例建模技術(shù)。它能夠直觀地向客戶展示系統(tǒng)的功能,方便技術(shù)人員準(zhǔn)確地獲取需求。在項目開發(fā)的前期,
103、它幫助開發(fā)人員理解系統(tǒng)的需求而不考慮具體的實現(xiàn)方法。用例,表示系統(tǒng)的一種行為或者某個功能。它是在特定條件下,為了達(dá)到某種目的,系統(tǒng)和用戶之間進(jìn)行交互的一個序列。用例模型由參與者和用例組成。參與者是與系統(tǒng)進(jìn)行交互的外部實體,可能是某個人或者是某個事物[16]。圖3.1顯示的就是本系統(tǒng)的用例圖。本系統(tǒng)中,參與者有五個,管理人員、發(fā)貨人、收貨人、車輛和定時器。對于用例分析來說,只有用例圖和用例描述相結(jié)合才能表示系統(tǒng)的需求,相關(guān)的用例描述如下。
104、</p><p> 圖 3.1 物流信息系統(tǒng)用例圖</p><p><b> 發(fā)送貨物</b></p><p> 用例標(biāo)識:1.0參與者: 發(fā)貨人</p><p> 簡要說明:發(fā)貨人在系統(tǒng)要求下提供發(fā)送貨物所需的信息,實現(xiàn)發(fā)貨操作。</p><p><b> 基本事件
105、流:</b></p><p> (1) 發(fā)貨人提供貨物基本信息,包括貨物類別、大小、目的地、發(fā)貨人信息、收貨人信息等。</p><p> (2) 經(jīng)相關(guān)人員檢驗貨物狀態(tài),貨物可以運輸。</p><p> (3) 系統(tǒng)記錄發(fā)貨人和收貨人信息,分配貨物編號,計算貨物運輸費用,配置貨物運輸路經(jīng),將相關(guān)記錄存儲到系統(tǒng)中。</p><p&
106、gt; (4) 打印發(fā)貨回執(zhí)給發(fā)貨人。</p><p><b> 查詢貨物狀態(tài)</b></p><p> 用例標(biāo)識:2.0參與者:管理人員,發(fā)貨人</p><p> 簡要說明:此用例中操作者可能為管理人員或者發(fā)貨人。操作者向系統(tǒng)提供貨物編號,系統(tǒng)以列表的方式顯示貨物的當(dāng)前狀態(tài)以及其他基本信息。</p><p
107、><b> 基本事件流:</b></p><p> (1) 操作者提供貨物編號進(jìn)行查詢。</p><p> (2) 系統(tǒng)進(jìn)行查詢,顯示當(dāng)前貨物狀態(tài)、位置等信息。</p><p><b> 提貨</b></p><p> 用例標(biāo)識:3.0參與者: 收貨人</p>
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于webgis的物流信息系統(tǒng)的設(shè)計與實現(xiàn)畢業(yè)設(shè)計論文
- 基于WebGIS的物流信息系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 計算機科學(xué)與技術(shù)畢業(yè)論文基于webgis的物流信息系統(tǒng)的設(shè)計與實現(xiàn)
- 基于WebGIS的旅游信息系統(tǒng)設(shè)計與實現(xiàn).pdf
- 基于WebGIS的信息系統(tǒng)的分析、設(shè)計與實現(xiàn).pdf
- 基于gps定位信息系統(tǒng)的設(shè)計與實現(xiàn)-畢業(yè)設(shè)計
- 倉儲物流信息系統(tǒng)設(shè)計畢業(yè)設(shè)計
- 基于WebGIS的橡膠精準(zhǔn)施肥信息系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 基于WebGIS的油田地面信息系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 21730.基于webgis的防洪預(yù)警信息系統(tǒng)的設(shè)計與實現(xiàn)
- 畢業(yè)設(shè)計----汽車物流信息系統(tǒng)
- 畢業(yè)設(shè)計----網(wǎng)絡(luò)旅游信息系統(tǒng)的設(shè)計與實現(xiàn)
- 基于WebGIS的稅務(wù)管理信息系統(tǒng)設(shè)計與實現(xiàn).pdf
- 基于WebGIS的農(nóng)業(yè)資源信息系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 52899.基于webgis的考古遺址信息系統(tǒng)的設(shè)計與實現(xiàn)
- 基于WebGIS的青藏公路凍土災(zāi)害信息系統(tǒng)設(shè)計與實現(xiàn).pdf
- 基于WebGIS的杭州市茶葉信息系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 基于WebGIS的海洋環(huán)境信息系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 基于WebGIS技術(shù)的基站管理信息系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 基于java平臺的webgis地名管理信息系統(tǒng)的設(shè)計與實現(xiàn)
評論
0/150
提交評論