国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Google Map的地震綜合信息服務(wù)系統(tǒng)構(gòu)建研究*

2011-11-14 11:41:04左德霖侯建明特木其勒丁文秀張亦梅
大地測量與地球動力學(xué) 2011年6期
關(guān)鍵詞:綜合信息應(yīng)用程序服務(wù)器

李 垠 左德霖 侯建明 特木其勒 丁文秀 劉 可 張亦梅

(1)湖北省地震局,武漢 430071 2)中國地震臺網(wǎng)中心,北京100045)

基于Google Map的地震綜合信息服務(wù)系統(tǒng)構(gòu)建研究*

李 垠1)左德霖1)侯建明2)特木其勒1)丁文秀1)劉 可1)張亦梅1)

(1)湖北省地震局,武漢 430071 2)中國地震臺網(wǎng)中心,北京100045)

基于Google地圖API接口,采用Oracle數(shù)據(jù)庫管理和AJAX、JavaScript技術(shù),進(jìn)行地震綜合信息服務(wù)系統(tǒng)的平臺搭建。結(jié)果表明該系統(tǒng)具有快速、全面、易操作的特點(diǎn),解決了目前開發(fā)GIS平臺數(shù)據(jù)昂貴、系統(tǒng)維護(hù)困難等問題,為用戶了解震情提供了良好的平臺。

Google地圖;API;地震綜合信息服務(wù)系統(tǒng);AJAX技術(shù);Oracle數(shù)據(jù)庫

1 引言

Google Map提供3種地圖類型:矢量地圖,不同分辨率的海量衛(wèi)星照片,地形視圖[1-3]。

空間數(shù)據(jù)的應(yīng)用范圍十分廣闊,對于GIS而言,如果要進(jìn)行深入的應(yīng)用,就需要兩大支撐體系,一個是數(shù)據(jù),另一個是平臺,二者缺一不可,因此搭建一套GIS系統(tǒng)不僅要收集大量數(shù)據(jù),而且還要搭建復(fù)雜的GIS系統(tǒng)平臺,面對這樣的現(xiàn)狀,Google公司推出了Google Map API的方法,即“應(yīng)用程序編程接口”,是為第三方開發(fā)人員提供的接口,利用這個接口,通過JavaScript將 Google地圖嵌入到其他的網(wǎng)頁中,不必了解其內(nèi)部機(jī)理,就可以使用部分地圖功能[1]。

在Google Map API的推出之后,又出現(xiàn)微軟Bing MAP API和百度地圖的API等,可見API技術(shù)已成為當(dāng)今熱門網(wǎng)絡(luò)應(yīng)用之一。API技術(shù)推廣的同時也推動了Google地圖的發(fā)展,充分利用Google MAP的數(shù)據(jù)資源,實(shí)現(xiàn)具有WEBGIS功能的地圖發(fā)布信息窗口。

2 關(guān)鍵性技術(shù)

2.1 AJAX技術(shù)

本系統(tǒng)采用 Asynchronous JavaScript and XML技術(shù)(簡稱AJAX技術(shù))。它以基于Web標(biāo)準(zhǔn)的XHTML+CSS的方式來表示,使用XMLHttpRequest對象向服務(wù)器提出請求并處理響應(yīng),它的優(yōu)點(diǎn)是在不更新整個頁面的前提下維護(hù)數(shù)據(jù),使得Web應(yīng)用程序能更為迅捷地回應(yīng)用戶動作,而且可以僅向服務(wù)器發(fā)送并取回必需的數(shù)據(jù)[2,4]。它使用SOAP或其他一些基于XML的Web Service接口,并在客戶端采用JavaScript處理來自服務(wù)器的響應(yīng),所以在服務(wù)器和瀏覽器之間交換的數(shù)據(jù)量大為減少,響應(yīng)速度更快,同時很多的處理工作可以在發(fā)出請求的客戶端機(jī)器上完成,使Web服務(wù)器的處理時間也相應(yīng)減少。

2.2 Oracle數(shù)據(jù)庫

地震綜合信息服務(wù)系統(tǒng)選用了Oracle數(shù)據(jù)庫管理系統(tǒng),在集群技術(shù)、高可用性、商業(yè)智能、安全性、系統(tǒng)管理等方面都優(yōu)于其他數(shù)據(jù)管理系統(tǒng)。Oracle應(yīng)用服務(wù)器是J2EE認(rèn)證的、最輕、最快、最具伸縮性的應(yīng)用服務(wù)器,提供了企業(yè)門戶軟件、無線支持、高速緩存、輕量級J2EE引擎、商務(wù)智能、快速應(yīng)用開發(fā)、應(yīng)用與業(yè)務(wù)集成、Web服務(wù)等多種應(yīng)用開發(fā)功能,形成完整的電子商務(wù)應(yīng)用開發(fā)和部署環(huán)境。使用了Oracle應(yīng)用服務(wù)器可以通過升級軟件來取代升級硬件,大大節(jié)省了基礎(chǔ)設(shè)施的成本。同時,又可用于快速開發(fā)使用Java和XML語言的互聯(lián)網(wǎng)應(yīng)用和Web服務(wù),支持任何語言、任何操作系統(tǒng)、任何開發(fā)風(fēng)格以及最新的互聯(lián)網(wǎng)標(biāo)準(zhǔn)。提供了基于角色(ROLE)分工的安全保密管理。在數(shù)據(jù)庫管理功能、完整性檢查、安全性、一致性方面都有良好的表現(xiàn)。

Oracle數(shù)據(jù)庫支持大量多媒體數(shù)據(jù),如二進(jìn)制圖形、聲音、動畫以及多維數(shù)據(jù)結(jié)構(gòu)等;能在C、C+ +等主語言中嵌入SQL語句及過程化(PL/SQL)語句,對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行操縱;可以加上其他前臺開發(fā)工具如 POWER BUILD、SQL FORMS、VISIA BASIC等,可以快速開發(fā)生成基于客戶端PC平臺的應(yīng)用程序,并具有良好的移植性;提供了新的分布式數(shù)據(jù)庫能力;可通過網(wǎng)絡(luò)較方便地讀寫遠(yuǎn)端數(shù)據(jù)庫里的數(shù)據(jù),并有對稱復(fù)制的技術(shù)。

2.3 Google Maps API

Google Maps API是 Google提供的一個基于JavaScript技術(shù)的API。其本身對開發(fā)環(huán)境要求并不高,只需要一個支持Google Maps API的瀏覽器即可,將Google地圖擴(kuò)展作為網(wǎng)絡(luò)應(yīng)用后還需要服務(wù)器端程序的支持,因此配置一個合理的開發(fā)環(huán)境即可[4]。

2.4 Tomcat服務(wù)

Tomcat服務(wù)器是由一系列可配置的組件構(gòu)成,其核心組件是Catalina Servlet容器,它是所有其他Tomcat組件的頂層容器。Tomcat的組件在/conf/ server.xml文件中進(jìn)行配置,每個Tomcat的組件在server.xml文件中對應(yīng)一種配置元素。Tomcat server提供全面的安全體系結(jié)構(gòu),其安全框架是依照J(rèn)SP安全規(guī)范定義的,包括用戶級和組級訪問控制列表、基于密碼的隱私權(quán)和用戶驗(yàn)證、域、數(shù)字簽名以及其他基于標(biāo)準(zhǔn)的安全措施。這一安全結(jié)構(gòu)讓用戶安全解決方案能夠熱融入到Tomcat Server的安全框架中,同時JSP應(yīng)用程序開發(fā)者也可以很容易地使用此框架提供的服務(wù)保護(hù)自己的應(yīng)用程序。

3 服務(wù)系統(tǒng)構(gòu)架

3.1 服務(wù)系統(tǒng)構(gòu)建方案

地震綜合信息服務(wù)系統(tǒng)技術(shù)的關(guān)鍵是Google Map的API技術(shù),通過JavaScript和AJAX將Google地圖中的大量實(shí)用工具嵌入到自己研發(fā)的網(wǎng)頁中,可以創(chuàng)建功能全面的地圖應(yīng)用網(wǎng)站。系統(tǒng)的后臺是用JAVA語句編寫,調(diào)用Oracle數(shù)據(jù)庫。如果數(shù)據(jù)庫中存放了矢量數(shù)據(jù),則需要通過ArcSDE和ArcIMS,將調(diào)用的本地Oracle數(shù)據(jù)庫中的地圖數(shù)據(jù),和Google Map的地圖資源進(jìn)行整合,將地震綜合信息顯示在自己開發(fā)的網(wǎng)站中為用戶提供服務(wù)(圖1),整體采用B/S(瀏覽器/服務(wù)器模式)結(jié)構(gòu)??蛻舳酥恍柰ㄟ^IE瀏覽器就可以實(shí)現(xiàn)系統(tǒng)功能,總的來說大大降低了開發(fā)成本。

圖1 地震綜合信息服務(wù)系統(tǒng)框架Fig.1 Framework of comprehensive earthquake information service system

客戶端的實(shí)現(xiàn)主要是利用JSP內(nèi)嵌Google Map API的方式實(shí)現(xiàn)地圖信息的基本瀏覽功能,用Servlet作為后臺的主控邏輯程序,利用Oracle數(shù)據(jù)庫管理地震信息的數(shù)據(jù)內(nèi)容,用Tomcat作為Web發(fā)布服務(wù)器,Servlet是一種服務(wù)器端的Java應(yīng)用程序,獨(dú)立于平臺和協(xié)議,可以生成動態(tài)的Web頁面。它承擔(dān)了客戶請求(Web瀏覽器或其他HTTP客戶程序)與服務(wù)器響應(yīng)(HTTP服務(wù)器上的數(shù)據(jù)庫或應(yīng)用程序)的中間層。Servlet是位于Web服務(wù)器內(nèi)部的服務(wù)器端的Java應(yīng)用程序,由Web服務(wù)器進(jìn)行加載并支持Servlet的Java虛擬機(jī)[2,4]。

3.2 Oracle數(shù)據(jù)庫連接和讀取

在Oracle數(shù)據(jù)庫中創(chuàng)建了空間表用來存放地震行業(yè)屬性數(shù)據(jù)。NewEarthquake數(shù)據(jù)表記錄最新地震相關(guān)信息,包括地震三要素(時間、地點(diǎn)(經(jīng)緯度)、震級);采用Java語言用connect的語法連接數(shù)據(jù)庫

然后調(diào)用SQL語句選擇符合條件的相應(yīng)字段數(shù)據(jù)如 SELECT=quot;SELECT ID,TIME,LAT,LON,DEPTH,MS,LOCATIONquot;。

3.3 API函數(shù)的實(shí)現(xiàn)

Google地圖的API提供了一個JavaScript庫,通過申請密匙key,它會自動載入地圖所需的js文件,利用提供的編程接口,將Google Maps服務(wù)器上的地圖圖片和數(shù)據(jù)下載到客戶端并正確顯示,從而在其地圖的基礎(chǔ)上顯示自己定義的地標(biāo)點(diǎn)等,實(shí)現(xiàn)地震綜合信息服務(wù)的目的。Google Map API的地圖的顯示、標(biāo)點(diǎn)、劃線等操作包含59個類,空間、疊加層等包含18個類,大大滿足了地震綜合信息服務(wù)系統(tǒng)的開發(fā)的需要[2]。

GMap是API的中心類,作用為在給定的容器DIV中創(chuàng)建地圖。可選參數(shù)opts.size可以設(shè)置地圖大小,默認(rèn)使用容器DIV的大小。

用initialize()函數(shù)加載地圖程序到地震綜合信息服務(wù)系統(tǒng)的頁面中,并設(shè)定好地圖的縮放級別和透明度等,同時調(diào)用TiledMapServiceLayer類在程序中加入緩存,可用不同數(shù)據(jù)源的地圖進(jìn)行服務(wù),比如ArcGIS Server的地圖服務(wù),Google Map的地圖,或者是Virtual Earth的地圖。用gmap類中的addMap-Type()添加地圖類型或者用removeMapType()去除某種地圖類型,在本系統(tǒng)中添加了G_PHYSICAL_ MAP具有自然特征(如地形和植被)的地圖和G_ HYBRID_MAP混合型地圖。用GLatLng()函數(shù)設(shè)置地圖的中心坐標(biāo)位置,用setCenter()函數(shù)來設(shè)置其地圖中心點(diǎn)和縮放級別如下:gmap.setCenter (GLatLng(30.95,112.36),7,G_PHYSICAL_ MAP)。

同樣利用API接口gmap類的addControl()添加Google Map的控件,包括地圖左側(cè)“魚骨”控件和比例尺、右側(cè)的地圖類型按鈕(圖2)。

圖2 Google地圖顯示Fig.2 Display in Google map

如gmap.addControl(new GLargeMapControl())加載左上側(cè)大“魚骨”,包含方向、縮放按鈕和縮放級別控制滑塊;gmap.addControl(new GMapTypeControl())加載右下側(cè)地圖類型按鈕;gmap.addControl (new GScaleControl())加載左下側(cè)的比例尺。

3.4 地圖的標(biāo)注

將從Oracle數(shù)據(jù)庫中提取的經(jīng)緯度坐標(biāo)在地圖上進(jìn)行標(biāo)注。首先定義一個經(jīng)緯度點(diǎn)GLatLng和標(biāo)注對象GMarker,根據(jù)震級的大小選用相應(yīng)的標(biāo)注圖標(biāo),然后用GMap類的addOverlay()在地圖上加入標(biāo)注,源代碼如下:

并在這個標(biāo)注點(diǎn)上添加通過單擊形式可以產(chǎn)生的信息浮窗提示,選用marker.openInfoWindowHtml (html)函數(shù)即可實(shí)現(xiàn)。

GMap類提供了一個打開quot;信息浮窗quot;的方法,可以在地圖上以浮動窗口模式顯示HTML內(nèi)容,但一次只能打開一個信息浮窗。利用事件監(jiān)視器。在程序中加入動態(tài)的內(nèi)容,每個實(shí)例提供一些指定的事件,利用靜態(tài)方法GEvent.addListener監(jiān)視這些事件。如下源代碼,在用戶點(diǎn)擊地圖中震中符號的時候顯示一個警告:

4 結(jié)語

將Google Map應(yīng)用于地震綜合信息服務(wù)系統(tǒng)彌補(bǔ)了傳統(tǒng)的單一的GIS平臺的不足。Google公司提供了Google Map地圖數(shù)據(jù)的共享,大大降低了GIS開發(fā)的難度和費(fèi)用,促進(jìn)了GIS行業(yè)的快速發(fā)展,受到整個社會的關(guān)注。

對地震綜合信息平臺開發(fā)的研究可以說是對地震領(lǐng)域應(yīng)用較為全面的研究。通過Google Map API的應(yīng)用,拓寬了地震專業(yè)的應(yīng)用研究領(lǐng)域范疇,具有較強(qiáng)的現(xiàn)實(shí)意義。

地震綜合信息服務(wù)系統(tǒng)的大致框架已經(jīng)初步搭建完成,目前可以顯示Google Map的地圖資源;讀取Oracle數(shù)據(jù)庫中的震情信息,將地震信息顯示到網(wǎng)頁的信息欄并標(biāo)注在地圖界面上(圖3);顯示在相同比例尺的條件下矢量地圖(圖4)、衛(wèi)星影像圖片(圖5)及混合型地圖(圖6)的震中分布情況。

圖3 界面顯示Fig.3 Display of interface

圖4 矢量地圖Fig.4 Vetcor map

圖5 衛(wèi)星影像圖片F(xiàn)ig.5 Satellite images

圖6 混合地圖Fig.6 Hybrid map

下一步需要對地震信息綜合服務(wù)系統(tǒng)進(jìn)行完善:在數(shù)據(jù)庫中添加其他地震相關(guān)信息,包括活動斷裂信息、滑坡泥石流信息、湖北臺網(wǎng)信息、地震帶信息、強(qiáng)震目錄信息、各地市縣的地震辦(局)的相關(guān)信息,以及申請用戶的權(quán)限的管理信息等;將各類信息根據(jù)用戶的級別和需求顯示在地圖中;通過地震災(zāi)害模型計(jì)算,在地圖中顯示地震烈度圖和地震響應(yīng)場[6],為今后震情趨勢判定提供快速而詳盡的背景資料;作為公眾信息發(fā)布平臺,為防震減災(zāi)宣傳工作提供一定的技術(shù)支持。

地震綜合信息服務(wù)平臺的搭建充分利用JSP平臺框架結(jié)構(gòu)的開放性、標(biāo)準(zhǔn)性;利用Google Map API接口,簡便的開發(fā)地圖服務(wù)功能;利用分布式存儲數(shù)據(jù)庫集中管理各類地震相關(guān)數(shù)據(jù)內(nèi)容;運(yùn)用強(qiáng)大的空間信息資源實(shí)現(xiàn)了地震信息綜合服務(wù)的有效管理,達(dá)到了用戶和管理員之間對地震相關(guān)數(shù)據(jù)資源的整合和共享、交流的目的。完善后的地震綜合信息服務(wù)系統(tǒng)為相關(guān)領(lǐng)導(dǎo)和部門、地震工作者提供了有效、快速、全面的預(yù)測依據(jù)和技術(shù)支持,為公眾提供一個震情信息發(fā)布平臺。

1 陳育春.Google Maps API開發(fā)大全[M].北京:機(jī)械工業(yè)出版社,2010.

2 地震信息發(fā)布系統(tǒng).http://www.ceic.ac.cn/index.jsp[EB/OL].(Earthquake Information Release System.http://www.ceic.ac.cn/index.jsp.

3 蘇娟.基于Google Map API地震信息發(fā)布系統(tǒng)的研究與實(shí)踐[D].首都師范大學(xué),2009.

4 Google Maps API官方網(wǎng).httP://WWW.google.com/apis/ maps/[EB/OL].(Google Maps API Official website.http://WWW.google.com/apis/maps/.

5 ESRI中國社區(qū).http://bbs.esrichina-bj.cn/ESRI/ viewthread.php?action=printable&tid=45537[EB/OL].(ESRIChina.http://bbs.esrichina-bj.cn/ESRI/ viewthread.php?action=printable&tid=45537[EB/OL])

6 周峰的博客.http://www.cnblogs.com/andrewzhou/archive/2009/07/08/1519120.html[EB/OL].(Zhou Feng’s blog.http://www.cnblogs.com/andrewzhou/archive/ 2009/07/08/1519120.html[EB/OL])

RESEARCH ON COMPREHENSIVE EARTHQUAKE INFORMATION SERVICE SYSTEM BASED ON GOOGLE MAP

Li Yin1),Zuo Delin1),Hou Jianming2),Temuqile1),Ding Wenxiu1),Liu Ke1)and Zhang Yimei1)

(1)Earthquake Administration of Hubei Province,Wuhan 430071 2)China Earthquake Networks Center,Beijing100045)

On the basis of the interfaces of Google Maps API,the comprehensive earthquake information system is built with Oracle database managerment,AJAX and JacaScript techonology.The results show that the developed method is comprehensive and fast,easy to use,and the following problems,such as expensive GIS data and hard system maintenance are solved with the system.It is a good platform for understanding the earthquake situation to the user.

Google maps;API;comprehensive earthquake research information service system;AJAX;Oracle database

1671-5942(2011)Supp.-0118-05

2010-07-07

地震應(yīng)急青年課題(CEA_EDEM-201010);中國地震局地震研究所所長基金(IS200946085)

李垠,女,1979年生,助理研究員,碩士,主要從事地震應(yīng)急技術(shù)保障及信息管理工作.E-mail:yubai1979@163.com

TP335

A

猜你喜歡
綜合信息應(yīng)用程序服務(wù)器
經(jīng)濟(jì)動態(tài)與企業(yè)綜合信息
通信控制服務(wù)器(CCS)維護(hù)終端的設(shè)計(jì)與實(shí)現(xiàn)
刪除Win10中自帶的應(yīng)用程序
電腦報(2019年12期)2019-09-10 05:08:20
得形忘意的服務(wù)器標(biāo)準(zhǔn)
計(jì)算機(jī)網(wǎng)絡(luò)安全服務(wù)器入侵與防御
經(jīng)濟(jì)動態(tài)與企業(yè)綜合信息
經(jīng)濟(jì)動態(tài)與企業(yè)綜合信息
經(jīng)濟(jì)動態(tài)與企業(yè)綜合信息
關(guān)閉應(yīng)用程序更新提醒
電腦迷(2012年15期)2012-04-29 17:09:47
三星電子將開設(shè)應(yīng)用程序下載商店
湘西| 虹口区| 温州市| 梅州市| 通许县| 丹寨县| 临沂市| 视频| 泉州市| 平凉市| 乌拉特中旗| 家居| 穆棱市| 扶沟县| 西充县| 梨树县| 松阳县| 栾川县| 遂溪县| 蓬莱市| 福建省| 灵璧县| 灵丘县| 东乡| 姚安县| 丰顺县| 江城| 永定县| 韩城市| 塔河县| 定西市| 普兰店市| 贵港市| 屯门区| 监利县| 麟游县| 康保县| 乌海市| 昭苏县| 高邑县| 大化|