朱學(xué)明
(常州市新北測繪勘察中心,江蘇常州213022)
基于WebGIS的專題園區(qū)項目評估系統(tǒng)設(shè)計與實(shí)現(xiàn)
朱學(xué)明
(常州市新北測繪勘察中心,江蘇常州213022)
分析當(dāng)前主流的網(wǎng)絡(luò)電子地圖發(fā)布技術(shù),介紹基于Java Applet技術(shù)自行開發(fā)設(shè)計的網(wǎng)絡(luò)電子地圖與常州市新北區(qū)企業(yè)項目評估系統(tǒng)。
WebGIS;電子地圖;項目評估;Java Applet
WebGIS是在Internet環(huán)境下的對地理空間信息存儲、處理、分析、發(fā)布的計算機(jī)信息系統(tǒng)[1]。它的基本思想就是在互聯(lián)網(wǎng)上提供地理信息,讓用戶通過瀏覽器瀏覽和獲得一個地理信息系統(tǒng)中的數(shù)據(jù)和功能服務(wù)。WebGIS由于具有操作簡單、跨平臺、可擴(kuò)展、信息分布共享、高效的負(fù)載平衡等特點(diǎn),已經(jīng)在諸多領(lǐng)域中得到廣泛的應(yīng)用。常州市新北區(qū)專題園區(qū)項目評估系統(tǒng)便是其一。該系統(tǒng)實(shí)現(xiàn)了對新北區(qū)空間信息與工業(yè)企業(yè)信息的有機(jī)整合與動態(tài)管理,以及對這些信息及其專題指標(biāo)的在線查詢、統(tǒng)計、評估和綜合分析。其服務(wù)應(yīng)用領(lǐng)域包括規(guī)劃管理部門、工商、稅務(wù)、招商等部門,以及區(qū)政府領(lǐng)導(dǎo)機(jī)關(guān)。同時,為了擴(kuò)大社會影響,該系統(tǒng)還面向公眾開放。
WebGIS是一種典型的服務(wù)器/瀏覽器(B/S)服務(wù)模式。但是,根據(jù)WebGIS服務(wù)器與客戶端的關(guān)系以及數(shù)據(jù)傳送的形式,其結(jié)構(gòu)模式又可分為兩種類型:倚重服務(wù)器模式和倚重客戶端模式。
1.1 倚重服務(wù)器模式
在倚重服務(wù)器模式下,用戶在客戶端提交數(shù)據(jù)和空間分析請求,完全由服務(wù)器來完成用戶提交的任務(wù),再把結(jié)果返回給客戶端,在客戶端瀏覽器上顯示處理結(jié)果,如CGI(Common Gateway Interface,公共網(wǎng)關(guān)接口)和SeverAPI等均為這種模式。這是一種典型的問答方式,其數(shù)據(jù)傳遞形式通常為柵格圖像。采用這種模式的應(yīng)用系統(tǒng)常見的有GoogleMap、百度地圖等。
如圖1所示,用戶輸入請求后,客戶端瀏覽器將請求發(fā)送給GIS服務(wù)器(GIS數(shù)據(jù)和GIS計算都部署在服務(wù)器上)。服務(wù)器根據(jù)請求進(jìn)行GIS計算,獲取空間數(shù)據(jù)和屬性數(shù)據(jù),并將結(jié)果形成新的中間GIS數(shù)據(jù)返回給客戶。
1.2 倚重客戶端模式
在倚重客戶端模式下,用戶在訪問系統(tǒng)時將部分應(yīng)用程序和數(shù)據(jù)下載到本地內(nèi)存,在客戶端完成所有或大部分的數(shù)據(jù)顯示、查詢和分析等任務(wù),如ActiveX、Plug-In和Java Applet。在此模式下,一般采用矢量格式的數(shù)據(jù)作為傳遞方式,以便能在客戶端實(shí)現(xiàn)空間分析功能,服務(wù)方式如圖2所示。
WebGIS應(yīng)用系統(tǒng)的分類與比較見表1。
表1 WebGIS應(yīng)用系統(tǒng)的分類與比較
WebGIS應(yīng)用系統(tǒng)的兩種模式各有其優(yōu)缺點(diǎn)。對企業(yè)而言,采取不同的 WebGIS結(jié)構(gòu),意味著實(shí)現(xiàn)企業(yè)GIS應(yīng)用查詢分析能力和開發(fā)成本的不同。一般來講,采用服務(wù)器模式意味著服務(wù)器端模塊要實(shí)現(xiàn)全部的GIS功能,對服務(wù)端的硬件要求和計算能力要求較高。相反,客戶端模式則將部分計算和數(shù)據(jù)部署到每個客戶端,從而減少了對服務(wù)端的壓力。但是這種模式對客戶端具有一定的要求,特別是在網(wǎng)絡(luò)安全下,對瀏覽器需要進(jìn)行適當(dāng)?shù)呐渲?。?shí)現(xiàn)客戶端服務(wù)的方式也有很多,如基于ActiveX的GIS插件方式、基于Java的Applet方式等。其中,基于Java Applet的方式由于其跨平臺的能力、小巧靈活的特點(diǎn),而成為一種較理想的實(shí)現(xiàn)方案。
1.3 基于Java Applet的客戶端模式
常州市新北區(qū)企業(yè)信息評估系統(tǒng)(CGXiPIS)是結(jié)合JavaScript語言,采用JavaApplet的方法實(shí)現(xiàn)在線企業(yè)信息及其他基本信息查詢、統(tǒng)計、評估和綜合分析的系統(tǒng)。JavaApplet的工作流程如圖3所示。JavaApplet可實(shí)時下載運(yùn)行,只要客戶端安裝Java虛擬環(huán)境,而無需在客戶端預(yù)先安裝其他程序,該特性對于需要大量數(shù)據(jù)傳輸?shù)牡乩硇畔⑾到y(tǒng)十分有利,而且GIS操作速度快,服務(wù)器和網(wǎng)絡(luò)傳輸?shù)呢?fù)擔(dān)小,可以把有限的帶寬全部用于圖形文件及相關(guān)數(shù)據(jù)的傳輸,以提高訪問速度??蛻舳嗽趫?zhí)行Java Applet時,可以靈活地響應(yīng)用戶的某個請求,達(dá)到真正的“事件驅(qū)動”功能[2]。因此,該模式較適合于我們開發(fā)的這種用戶與網(wǎng)頁交互要求高的網(wǎng)絡(luò)系統(tǒng)。
2.1 開發(fā)目標(biāo)
本研究旨在實(shí)現(xiàn)基于Java Applet的WebGIS架構(gòu)模式,并應(yīng)用于 CGXiPIS,以實(shí)現(xiàn)區(qū)域內(nèi)空間數(shù)據(jù)與專題數(shù)據(jù)的有機(jī)整合和動態(tài)管理,并對區(qū)域內(nèi)的各產(chǎn)業(yè)帶項目的規(guī)劃建設(shè)信息、經(jīng)濟(jì)信息、產(chǎn)業(yè)信息、效益信息等要素及其相應(yīng)的土地利用價值、經(jīng)濟(jì)指標(biāo)、經(jīng)濟(jì)效益等進(jìn)行專題評估和綜合分析,為規(guī)劃管理提供一個定量的分析與決策平臺。
2.2 系統(tǒng)架構(gòu)
如圖4所示,本系統(tǒng)采用三層結(jié)構(gòu)的客戶端模式,客戶層采用JavaApplet和JavaScript為用戶提供圖形界面,運(yùn)行環(huán)境主要是Web瀏覽器。在業(yè)務(wù)邏輯層,Web服務(wù)器通過HTTP協(xié)議向客戶層提供Applet程序;GIS應(yīng)用服務(wù)器包含完成業(yè)務(wù)邏輯所需要的各種服務(wù),通過自定義協(xié)議或RM I/IIOP與運(yùn)行在客戶層的Applet程序通信,并通過 JDBC訪問存儲在數(shù)據(jù)庫中的空間數(shù)據(jù)和屬性數(shù)據(jù)。數(shù)據(jù)庫層提供空間數(shù)據(jù)存儲、查詢的功能。
2.3 系統(tǒng)界面及主要功能
1)GIS JavaApplet的實(shí)現(xiàn)機(jī)制??蛻魧邮且粋€圖形用戶界面,采用JavaApplet與JavaScript為用戶提供地圖的基本操作,如放大、縮小、漫游、選擇、全屏等,實(shí)現(xiàn)空間數(shù)據(jù)的顯示、查詢、統(tǒng)計分析、專題圖制作等功能。為了解決上述問題,GISJavaApplet需監(jiān)聽地圖鼠標(biāo)的所有事件,根據(jù)用戶的操作類型進(jìn)行相應(yīng)的地圖處理,如縮放、漫游、查詢等[3]。當(dāng)用戶的一次地圖操作完成后,若有數(shù)據(jù)查詢請求,則利用Java Applet與JavaScript的接口實(shí)現(xiàn)向WebServer發(fā)出請求,并獲得結(jié)果數(shù)據(jù)。
在用戶首次請求服務(wù)時,WebServer將GISJavaApplet和GIS數(shù)據(jù)對象打包下載到客戶端,由瀏覽器加載Applet小程序。用戶對地圖的所有操作基本上都在本地由客戶端完成,運(yùn)行速度快,并減少了服務(wù)器端的負(fù)載和網(wǎng)絡(luò)通信量。
2)系統(tǒng)的主要功能。主界面如圖6所示。按照功能性質(zhì),系統(tǒng)主要實(shí)現(xiàn)以下功能。
圖形區(qū):實(shí)現(xiàn)圖形的基本操作,如縮小、放大、漫游等;依據(jù)圖面的企業(yè)查找(如劃線查詢、測距、測面積、作圖面標(biāo)記、逐級圖面回退等功能;
文字區(qū):依據(jù)搜索欄的輸入信息,實(shí)現(xiàn)對企業(yè)的查詢與檢索(如簡單模糊查詢、按照空間、時間、企業(yè)類型的復(fù)雜查詢),并對檢索所得的企業(yè)集合進(jìn)行多維、多目標(biāo)的分析評估。
用戶信息區(qū):顯示當(dāng)前用戶的信息。
其中,圖形區(qū)和文字區(qū)可進(jìn)行實(shí)時交互。例如,文字區(qū)查詢到的企業(yè)信息將同時顯示在圖面區(qū)中;而圖面上查詢到的企業(yè)也將列表顯示在文字區(qū)中。
3)用Java Applet實(shí)現(xiàn)小程序與HTML之間的雙向通信。JavaScript是一種面向?qū)ο蟮恼Z言,能夠直接與Java Applet中的類交互,還能自行編寫類并進(jìn)行調(diào)用[4]。JavaApplet的屬性、事件及方法中的公有成員變量、公有方法都可以被JavaScript調(diào)用,編寫各種形式的JavaScript函數(shù),嵌入HTML文件中被執(zhí)行。通過這樣的操作,可實(shí)現(xiàn)Java Applet與HTML之間的雙向通信,完成JavaApplet的各種功能在HTML中的執(zhí)行[5]。
在本系統(tǒng)中,Applet顯示區(qū)域中發(fā)生的鼠標(biāo)事件都由 Applet捕獲,并進(jìn)行處理。處理完成后,調(diào)用HTML頁面中的JavaScript函數(shù)jar2Htm l(),并將處理的結(jié)果作為參數(shù)傳到該函數(shù)中。在HTML頁面中,可以在jar2Htm l()函數(shù)中通過對參數(shù)進(jìn)行一些操作,獲取處理結(jié)果,并將結(jié)果顯示出來。
常州市新北區(qū)企業(yè)信息評估系統(tǒng)采用 Java Applet技術(shù)實(shí)現(xiàn)WebGIS客戶端方案,充分考慮了客戶機(jī)、服務(wù)器的計算能力和網(wǎng)絡(luò)通信量,合理分配服務(wù)器端和客戶端的負(fù)載,提高用戶與服務(wù)器的互操作性,能滿足系統(tǒng)各級用戶的應(yīng)用需求。在系統(tǒng)實(shí)現(xiàn)時只要在中間層也采用Java技術(shù),則可實(shí)現(xiàn)整個系統(tǒng)的可跨平臺性。
[1] 宋關(guān)福,鐘耳順,王爾琪.WebGIS--基于Internet的地理信息系統(tǒng)[J].中國圖像圖形學(xué)報,1998,3:251-254
[2] 費(fèi)拉納提著,李強(qiáng)譯.JavaScript權(quán)威指南[M].第五版.北京:機(jī)械工業(yè)出版社,2007
[3] 舒忠玲,汪林林.Java Applet在WebGIS中的應(yīng)用[J].上海工程技術(shù)大學(xué)學(xué)報,2004,18(1):53-57
[4] 楊姍姍,王明軍,杜清運(yùn),等.JavaApplet與JavaScript交互方法的探討[J].測繪與空間地理信息,2005,28(4):26-29
[5] 錢貞國.面向互操作的分布式網(wǎng)絡(luò)信息系統(tǒng)研究[D].北京:中國科學(xué)院研究生院(遙感應(yīng)用研究所),2004
Design and Implementation of Project Evaluation System for Theme Community Based on WebGIS
ZHU Xuem ing
(Mapping Survey Center of Xinbei,Changzhou,Changzhou 213022,China)
This paper analyzed the current mainstream publishing technology of web-based electronic map,introduced a network electronic map designed and developed by ourselves based on Java Applet and projects evaluation system for business in Xinbei District,Changzhou.
webGIS;electronic map;project evaluation;java applit
2009-12-07
P208
B
1672-4623(2010)01-0087-03
朱學(xué)明,注冊測繪師,主要從事工程測量技術(shù)與管理、數(shù)字城市和地理信息系統(tǒng)研究與應(yīng)用工作。