



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 基于SVG/AJAX和REST的WebGIS體系架構(gòu)的構(gòu)建與實現(xiàn) 李心穎+李峰Summary:通過對SVG和Ajax技術(shù)在WebGIS中的應(yīng)用進(jìn)行分析,同時針對分布式Web應(yīng)用性能低、時常交互不順暢、可伸縮性不夠的問題,結(jié)合REST式的體系風(fēng)格和面向資源架構(gòu)ROA,使用Web Services來開發(fā)Web分布式應(yīng)用,建立基于SVG/AJAX和REST的WebGIS體系架構(gòu),以實現(xiàn)對基于WebGIS的海南旅游地理信息系統(tǒng)的優(yōu)化。Key:SVG;Ajax;REST;WebGIS:TP311 :A :1009-3044(2016)28-0083-03Abstract:Based on SVG an
2、d Ajax technology in the application of WebGIS is analyzed, at the same time, in view of the distributed Web application performance is low, often interaction is not smooth, the lack of scalability, combined with restful style of system and resource oriented architecture ROA, use Web Services to dev
3、elop Web distributed applications, based on SVG/Ajax and REST of WebGIS architecture, to realize the optimization of hainan tourism geographic information system based on WebGIS.Key words:SVG; Ajax; REST; WebGIS作為GIS與Internet相結(jié)合的產(chǎn)物,WebGIS通過互聯(lián)網(wǎng)對以圖形、圖像方式表現(xiàn)的空間數(shù)據(jù)和其屬性數(shù)據(jù)進(jìn)行發(fā)布、信息檢索、空間分析和應(yīng)用,以實現(xiàn)空間數(shù)據(jù)的共享和互操作。但傳
4、統(tǒng)的Web語言HTML不利于表現(xiàn)空間地理數(shù)據(jù),加上網(wǎng)絡(luò)帶寬的限制,基于WebGIS的空間信息發(fā)布也并不十分理想。因此WebGIS設(shè)計的主要問題是如何能減輕網(wǎng)絡(luò)傳輸負(fù)載,客戶端采用何種圖形數(shù)據(jù)方式進(jìn)行顯示,并加快地圖顯示速度,同時此平臺應(yīng)具備地圖數(shù)據(jù)量小、傳輸方便、GIS數(shù)據(jù)更新快、較強的多媒體信息表現(xiàn)能力等特性。1 SVG和Ajax技術(shù)SVG是一種開放標(biāo)準(zhǔn),用來描述網(wǎng)絡(luò)的基于二維矢量圖形的一種圖形格式,使用SVG技術(shù)能在網(wǎng)頁上顯示出各種高品質(zhì)的矢量圖形,如圖形、文字、色彩、動畫、特效等。且SVG使用 XML格式定義圖形,其可擴(kuò)展性很強,SVG圖像在放大或改變尺寸的情況下不會破壞其圖形質(zhì)量。Aj
5、ax在XHTML和CSS基礎(chǔ)上,使用DOM來實現(xiàn)數(shù)據(jù)的動態(tài)顯示和交互,用JavaScript綁定和處理所有數(shù)據(jù),利用XML和XSTL語言對數(shù)據(jù)進(jìn)行交換與處理,使用XMLHttpReques對象讀取異步數(shù)據(jù)。Ajax提供與服務(wù)器異步通信的能力,它在瀏覽器與Web服務(wù)器之間使用異步數(shù)據(jù)傳輸(HTTP請求),用戶需要的數(shù)據(jù)可以獨立于實際網(wǎng)頁,從服務(wù)器端取得并且被動態(tài)地寫入網(wǎng)頁中。同時還可以把服務(wù)器以前承擔(dān)的一些工作任務(wù)轉(zhuǎn)交給用戶端,在客戶端閑置時來處理這些工作,以此減輕服務(wù)器和帶寬的負(fù)載,并極大地縮短了用戶等待時間,提高工作效率。2 REST風(fēng)格的Web服務(wù)REST是一種架構(gòu)風(fēng)格或者設(shè)計原則,滿足這
6、些原則的設(shè)計就是RESTful。REST風(fēng)格架構(gòu)是為了降低Web應(yīng)用開發(fā)的復(fù)雜性、提高系統(tǒng)的可伸縮性而設(shè)計的。利用REST,任何Web上的資源都可以被當(dāng)作URI提供,每個資源對應(yīng)的資源標(biāo)識符是唯一的,無論對資源做何種操作都不會改變資源標(biāo)識符。通過URI客戶端應(yīng)用可以獲取資源的表現(xiàn)形式,同一個資源有多種不同的表現(xiàn)形式,在服務(wù)器獲得這些資源表現(xiàn)狀態(tài)后,驅(qū)動客戶端應(yīng)用程序轉(zhuǎn)變其狀態(tài),于是客戶端應(yīng)用程序隨著每個資源表現(xiàn)狀態(tài)的不同而發(fā)生狀態(tài)轉(zhuǎn)移。通過設(shè)計REST式的Web服務(wù)方法,ROA(Resource-Oriented Architecture,面向資源的體系架構(gòu))使URI、HTTP和XML的工作方
7、式跟其他Web應(yīng)用一樣。REST架構(gòu)是一種風(fēng)格明確、簡單易用的架構(gòu)。REST支持直接通過 HTTP 傳輸數(shù)據(jù),使用 REST體系結(jié)構(gòu)構(gòu)建 Web 服務(wù)已經(jīng)開始替代傳統(tǒng)的 Web 服務(wù)構(gòu)建方式。遠(yuǎn)程過程調(diào)用(RPC)式的應(yīng)用是通過自定義接口的方法來抽象WEB服務(wù),而REST架構(gòu)采用標(biāo)準(zhǔn)的HTTP方法,可以增強系統(tǒng)與系統(tǒng)之間的整合能力和提高互操作性。對于分布式的應(yīng)用而言,任意給定兩個服務(wù)請求可以在任何一臺服務(wù)器上執(zhí)行,因為其之間沒有存在相互的狀態(tài)依賴關(guān)系,所以無需對其進(jìn)行相互協(xié)同處理,其應(yīng)用很容易在服務(wù)器端支持負(fù)載均衡。3 Ajax與WebGIS傳統(tǒng)Web應(yīng)用模型的運行過程是客戶提交給Web服務(wù)器
8、一個HTTP請求,服務(wù)器接到這個請求后,把處理結(jié)果返回一個HTML頁面給客戶端。用戶若沒有得到服務(wù)器的響應(yīng)的時間里一直處于等待狀態(tài),瀏覽器由于頁面刷新出現(xiàn)白屏。這個過程不斷循環(huán)直到用戶退出,整個過程是同步的。Ajax模型與傳統(tǒng)模型的不同之處在于服務(wù)響應(yīng)的異步性。這是通過在客戶端與服務(wù)端之間的Ajax引擎(Ajax Engine)實現(xiàn)的。Ajax引擎將客戶端的頁面分解為數(shù)據(jù)層、控制層和表現(xiàn)層。AJAX通過JavaScript的XMLHttpRequestt對象提供客戶端同HTTP服務(wù)器異步通信的協(xié)議,Ajax可以使頁面像桌面程序一樣同服務(wù)器端進(jìn)行數(shù)據(jù)層面的交換。不需要每次都刷新頁面,每次的數(shù)據(jù)處
9、理工作也不用都交給服務(wù)器來完成,這樣既減輕了服務(wù)器負(fù)擔(dān)又加快了響應(yīng)速度,縮短了用戶等待的時間。 在WebGIS應(yīng)用中,客戶與服務(wù)器端需要即時的交互響應(yīng)和大量的通信,空間數(shù)據(jù)以圖片形式傳輸,因此可以使用Ajax技術(shù)開發(fā)為基礎(chǔ)。在基于OGC標(biāo)準(zhǔn)的WMS服務(wù)實現(xiàn)地圖服務(wù)的方法中,采用Ajax技術(shù)實現(xiàn)客戶端與服務(wù)器的異步通信,Ajax引擎按用戶需求來獲取空間信息,以減少冗余請求和響應(yīng)對服務(wù)端造成的負(fù)擔(dān),使整個WebGIS的性能得到提高。4 基于SVG/Ajax/REST的WebGIS體系架構(gòu)的構(gòu)建與實現(xiàn)4.1 基于SVG/Ajax/REST的WebGIS體系架構(gòu)從客戶端來講,Ajax可以提供很好的圖形
10、用戶界面,Ajax將網(wǎng)頁的結(jié)構(gòu)與內(nèi)容分開,用戶端設(shè)計友好的網(wǎng)頁界面,從服務(wù)器端獲取相應(yīng)的數(shù)據(jù)。WebGIS應(yīng)用中最重要的是數(shù)據(jù)服務(wù),如地理數(shù)據(jù)的搜索與查詢、瀏覽等。而REST提出的客戶端緩存思想與Ajax 吻合,結(jié)合REST的特性,將GIS數(shù)據(jù)服務(wù)建成REST風(fēng)格的Web服務(wù),REST風(fēng)格的數(shù)據(jù)資源可以通過HTTP動作獲得,瀏覽器獲取數(shù)據(jù)與用戶操作異步,加快獲取地理數(shù)據(jù)的速度。且SVG的許多特性應(yīng)用在WebGIS中可以提供高質(zhì)量的WebGIS服務(wù)。綜上所述,結(jié)合SVG、Ajax 與REST風(fēng)格來構(gòu)建以數(shù)據(jù)為中心的WebGIS架構(gòu)是可行的。基于SVG/Ajax/REST的WebGIS體系架構(gòu)如圖
11、所示,本架構(gòu)分三層,分別是數(shù)據(jù)層、服務(wù)層和表示層。數(shù)據(jù)層提供基礎(chǔ)數(shù)據(jù)Web服務(wù),以REST方式提供給用戶所需要的數(shù)據(jù),客戶端通過URL遠(yuǎn)程使用需要的數(shù)據(jù)??蛻舳藢⒕W(wǎng)頁的框架與數(shù)據(jù)分開,通過Java Script調(diào)用客戶端上的Ajax引擎,異步地向服務(wù)器發(fā)送HTTP請求,地理信息中的柵格數(shù)據(jù)以XML數(shù)據(jù)格式從服務(wù)器端向客戶端發(fā)送數(shù)據(jù),通過服務(wù)器端的URI來識別所需資源(即數(shù)據(jù)),數(shù)據(jù)以XML、JSON、SVG等格式傳回給客戶端 Ajax引擎,再由客戶端圖像引擎將XML格式數(shù)據(jù)轉(zhuǎn)換為SVG對象在客戶端SVG插件中顯示。4.2 基于SVG/Ajax/REST的WebGIS實現(xiàn)基于以上服務(wù)架構(gòu),對基于
12、WebGIS的海南旅游地理信息系統(tǒng)進(jìn)行優(yōu)化??蛻舳藢崿F(xiàn)地圖的顯示、預(yù)覽、縮放及查詢功能,以Ajax的方式與Web應(yīng)用服務(wù)層進(jìn)行交互,Web應(yīng)用服務(wù)器響應(yīng)客戶的請求。地圖服務(wù)器根據(jù)應(yīng)用服務(wù)器發(fā)送的服務(wù)請求調(diào)用REST風(fēng)格的Web服務(wù),處理客戶請求和對空間數(shù)據(jù)進(jìn)行操作,數(shù)據(jù)中心用來提供SVG數(shù)據(jù),包括地理空間數(shù)據(jù)和屬性數(shù)據(jù)。系統(tǒng)優(yōu)化后所實現(xiàn)的主要功能如下:1)空間數(shù)據(jù)可視化與發(fā)布WebGIS中將柵格地圖轉(zhuǎn)換為SVG格式,以SVG圖形方式顯示系統(tǒng)的地理空間數(shù)據(jù),并支持XML定義圖形,在分辨率變化的情況下圖形質(zhì)量不發(fā)生改變,實現(xiàn)數(shù)據(jù)的可視化。通過XML傳輸方式,把空間圖形及屬性數(shù)據(jù)發(fā)送到客戶端的瀏覽器
13、上,客戶端通過SVG圖像引擎轉(zhuǎn)換為SVG圖像供用戶使用。2)空間數(shù)據(jù)查詢檢索通過Ajax實現(xiàn)服務(wù)器與瀏覽器的交互,WebGIS可以實現(xiàn)對圖形及屬性數(shù)據(jù)的查詢檢索,并遠(yuǎn)程操作這些數(shù)據(jù)。查詢分為兩類:屬性查詢和空間查詢。在屬性查詢中用戶可以根據(jù)空間對象的文字性屬性值快速查出地圖中符合條件的空間對象的具體位置,空間查詢可以根據(jù)空間對象的空間屬性值快速的在地圖中確定符合條件的目標(biāo)。3)空間地圖管理提供給用戶瀏覽的地圖操作功能,包括地圖的縮放、漫游、點選、區(qū)域選擇、鷹眼、全景、圖層控制等地圖操作。通過Ajax/REST模式用戶可以更加快捷、方便地操作地圖。利用AjaxControls的MapContro
14、l(地圖控件)、ToolbarControl(工具條控件)、PanToolControl(地圖漫游控件)、ViewEntireToolControl(全圖顯示控件)、QuickZoomOutToolControl(地圖快速縮小控件)、QuickZoomInToolControl(地圖快速放大控件)等實現(xiàn)對地圖的操作。5 結(jié)論通過對SVG、Ajax技術(shù)及REST的研究,REST特性的Web服務(wù)更適應(yīng)于GIS在Web上提供數(shù)據(jù)服務(wù);把REST與Ajax的優(yōu)勢相結(jié)合,使用Ajax調(diào)用WCF Web Services一樣也可以提高Web用戶的體驗;SVG是基于可擴(kuò)展標(biāo)記語言格式的,便于在網(wǎng)絡(luò)發(fā)布、傳輸
15、空間數(shù)據(jù),同時有跨平臺數(shù)據(jù)量少、傳輸效率高的優(yōu)點。因此構(gòu)建SVG/Ajax/REST的WebGIS體系架構(gòu)有如下特點:1)訪問速度快。由于Ajax的異步通信能力,能實現(xiàn)整個頁面不用刷新也能更新頁面的效果,從而減少了從服務(wù)器端下載數(shù)據(jù)的數(shù)量,提高了響應(yīng)速度。 2)可伸縮性強。利用當(dāng)前Web基礎(chǔ)設(shè)施,多個客戶與GIS Web服務(wù)交互,不會導(dǎo)致網(wǎng)絡(luò)負(fù)載的明顯增加。3)良好的互操作性?;赗EST原則構(gòu)建的WebGIS強調(diào)服務(wù)間的通信協(xié)議,具有松散耦合的特點,因此有助于GIS互操作的實現(xiàn)。4)降低開發(fā)成本,提高了WebGIS的運行效率。Reference:1 孫鴿.郭朝珍.基于SVG的WebGIS空間分析系統(tǒng)的研究與實現(xiàn)J.小型微型計算機(jī)系統(tǒng),2012(5).2 李學(xué)義,李巖.SVG在線空間自相關(guān)分析方法及其應(yīng)用J.地理與地理信息科學(xué),2012(5).3 周春峰.基于Flex_REST的WebGIS研究D.阜新:遼寧工程技術(shù)大學(xué),2011.4 夏浩波,徐杏芳.Ajax在WebGIS中的應(yīng)用研究J. 長江大學(xué)學(xué)報:自科版, 2008(4):307-308.5 毛峰.基于REST風(fēng)格
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 茶樓入股投資合作協(xié)議書(2025年)
- 整裝供貨合同范本
- 二零二五年度智能家居系統(tǒng)技術(shù)授權(quán)合同
- 二零二五年度無需繳納社保的實習(xí)生聘用合同
- 二零二五年度酒店餐飲行業(yè)勞動合同工傷賠償及顧客權(quán)益保障協(xié)議
- 二零二五年度工業(yè)用地拆遷安置補償合同范本
- 棧道工程合同范本
- 2025至2030年中國鉛魚漁餌數(shù)據(jù)監(jiān)測研究報告
- 2025至2030年中國調(diào)速液壓升降分散機(jī)數(shù)據(jù)監(jiān)測研究報告
- 2025至2031年中國迷彩苫布行業(yè)投資前景及策略咨詢研究報告
- 2025年不停電電源(UPS)項目合作計劃書
- 林木采伐安全協(xié)議書范本
- 2025年湖南食品藥品職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測試近5年常考版參考題庫含答案解析
- 碳酸鈣脫硫劑項目可行性研究報告立項申請報告模板
- 山東省泰安市新泰市2024-2025學(xué)年(五四學(xué)制)九年級上學(xué)期1月期末道德與法治試題(含答案)
- DB3502T 160-2024 工業(yè)產(chǎn)品質(zhì)量技術(shù)幫扶和質(zhì)量安全監(jiān)管聯(lián)動工作規(guī)范
- 會議會務(wù)服務(wù)投標(biāo)方案投標(biāo)文件(技術(shù)方案)
- 無違法犯罪記錄證明申請表(個人)
- 請款單(可直接打印-標(biāo)準(zhǔn)模板)
- 機(jī)電預(yù)留預(yù)埋工程施工組織設(shè)計方案
- 2022年三八婦女節(jié)婦女權(quán)益保障法律知識競賽題庫及答案(共290題)
評論
0/150
提交評論