朱學明
(常州市新北測繪勘察中心,江蘇常州213022)
基于WebGIS的專題園區項目評估系統設計與實現
朱學明
(常州市新北測繪勘察中心,江蘇常州213022)
分析當前主流的網絡電子地圖發布技術,介紹基于Java Applet技術自行開發設計的網絡電子地圖與常州市新北區企業項目評估系統。
WebGIS;電子地圖;項目評估;Java Applet

WebGIS是在Internet環境下的對地理空間信息存儲、處理、分析、發布的計算機信息系統[1]。它的基本思想就是在互聯網上提供地理信息,讓用戶通過瀏覽器瀏覽和獲得一個地理信息系統中的數據和功能服務。WebGIS由于具有操作簡單、跨平臺、可擴展、信息分布共享、高效的負載平衡等特點,已經在諸多領域中得到廣泛的應用。常州市新北區專題園區項目評估系統便是其一。該系統實現了對新北區空間信息與工業企業信息的有機整合與動態管理,以及對這些信息及其專題指標的在線查詢、統計、評估和綜合分析。其服務應用領域包括規劃管理部門、工商、稅務、招商等部門,以及區政府領導機關。同時,為了擴大社會影響,該系統還面向公眾開放。
WebGIS是一種典型的服務器/瀏覽器(B/S)服務模式。但是,根據WebGIS服務器與客戶端的關系以及數據傳送的形式,其結構模式又可分為兩種類型:倚重服務器模式和倚重客戶端模式。
1.1 倚重服務器模式
在倚重服務器模式下,用戶在客戶端提交數據和空間分析請求,完全由服務器來完成用戶提交的任務,再把結果返回給客戶端,在客戶端瀏覽器上顯示處理結果,如CGI(Common Gateway Interface,公共網關接口)和SeverAPI等均為這種模式。這是一種典型的問答方式,其數據傳遞形式通常為柵格圖像。采用這種模式的應用系統常見的有GoogleMap、百度地圖等。
如圖1所示,用戶輸入請求后,客戶端瀏覽器將請求發送給GIS服務器(GIS數據和GIS計算都部署在服務器上)。服務器根據請求進行GIS計算,獲取空間數據和屬性數據,并將結果形成新的中間GIS數據返回給客戶。

1.2 倚重客戶端模式
在倚重客戶端模式下,用戶在訪問系統時將部分應用程序和數據下載到本地內存,在客戶端完成所有或大部分的數據顯示、查詢和分析等任務,如ActiveX、Plug-In和Java Applet。在此模式下,一般采用矢量格式的數據作為傳遞方式,以便能在客戶端實現空間分析功能,服務方式如圖2所示。
WebGIS應用系統的分類與比較見表1。


表1 WebGIS應用系統的分類與比較
WebGIS應用系統的兩種模式各有其優缺點。對企業而言,采取不同的 WebGIS結構,意味著實現企業GIS應用查詢分析能力和開發成本的不同。一般來講,采用服務器模式意味著服務器端模塊要實現全部的GIS功能,對服務端的硬件要求和計算能力要求較高。相反,客戶端模式則將部分計算和數據部署到每個客戶端,從而減少了對服務端的壓力。但是這種模式對客戶端具有一定的要求,特別是在網絡安全下,對瀏覽器需要進行適當的配置。實現客戶端服務的方式也有很多,如基于ActiveX的GIS插件方式、基于Java的Applet方式等。其中,基于Java Applet的方式由于其跨平臺的能力、小巧靈活的特點,而成為一種較理想的實現方案。
1.3 基于Java Applet的客戶端模式
常州市新北區企業信息評估系統(CGXiPIS)是結合JavaScript語言,采用JavaApplet的方法實現在線企業信息及其他基本信息查詢、統計、評估和綜合分析的系統。JavaApplet的工作流程如圖3所示。JavaApplet可實時下載運行,只要客戶端安裝Java虛擬環境,而無需在客戶端預先安裝其他程序,該特性對于需要大量數據傳輸的地理信息系統十分有利,而且GIS操作速度快,服務器和網絡傳輸的負擔小,可以把有限的帶寬全部用于圖形文件及相關數據的傳輸,以提高訪問速度。客戶端在執行Java Applet時,可以靈活地響應用戶的某個請求,達到真正的“事件驅動”功能[2]。因此,該模式較適合于我們開發的這種用戶與網頁交互要求高的網絡系統。

2.1 開發目標
本研究旨在實現基于Java Applet的WebGIS架構模式,并應用于 CGXiPIS,以實現區域內空間數據與專題數據的有機整合和動態管理,并對區域內的各產業帶項目的規劃建設信息、經濟信息、產業信息、效益信息等要素及其相應的土地利用價值、經濟指標、經濟效益等進行專題評估和綜合分析,為規劃管理提供一個定量的分析與決策平臺。
2.2 系統架構
如圖4所示,本系統采用三層結構的客戶端模式,客戶層采用JavaApplet和JavaScript為用戶提供圖形界面,運行環境主要是Web瀏覽器。在業務邏輯層,Web服務器通過HTTP協議向客戶層提供Applet程序;GIS應用服務器包含完成業務邏輯所需要的各種服務,通過自定義協議或RM I/IIOP與運行在客戶層的Applet程序通信,并通過 JDBC訪問存儲在數據庫中的空間數據和屬性數據。數據庫層提供空間數據存儲、查詢的功能。
2.3 系統界面及主要功能
1)GIS JavaApplet的實現機制。客戶層是一個圖形用戶界面,采用JavaApplet與JavaScript為用戶提供地圖的基本操作,如放大、縮小、漫游、選擇、全屏等,實現空間數據的顯示、查詢、統計分析、專題圖制作等功能。為了解決上述問題,GISJavaApplet需監聽地圖鼠標的所有事件,根據用戶的操作類型進行相應的地圖處理,如縮放、漫游、查詢等[3]。當用戶的一次地圖操作完成后,若有數據查詢請求,則利用Java Applet與JavaScript的接口實現向WebServer發出請求,并獲得結果數據。

在用戶首次請求服務時,WebServer將GISJavaApplet和GIS數據對象打包下載到客戶端,由瀏覽器加載Applet小程序。用戶對地圖的所有操作基本上都在本地由客戶端完成,運行速度快,并減少了服務器端的負載和網絡通信量。
2)系統的主要功能。主界面如圖6所示。按照功能性質,系統主要實現以下功能。

圖形區:實現圖形的基本操作,如縮小、放大、漫游等;依據圖面的企業查找(如劃線查詢、測距、測面積、作圖面標記、逐級圖面回退等功能;
文字區:依據搜索欄的輸入信息,實現對企業的查詢與檢索(如簡單模糊查詢、按照空間、時間、企業類型的復雜查詢),并對檢索所得的企業集合進行多維、多目標的分析評估。
用戶信息區:顯示當前用戶的信息。
其中,圖形區和文字區可進行實時交互。例如,文字區查詢到的企業信息將同時顯示在圖面區中;而圖面上查詢到的企業也將列表顯示在文字區中。

3)用Java Applet實現小程序與HTML之間的雙向通信。JavaScript是一種面向對象的語言,能夠直接與Java Applet中的類交互,還能自行編寫類并進行調用[4]。JavaApplet的屬性、事件及方法中的公有成員變量、公有方法都可以被JavaScript調用,編寫各種形式的JavaScript函數,嵌入HTML文件中被執行。通過這樣的操作,可實現Java Applet與HTML之間的雙向通信,完成JavaApplet的各種功能在HTML中的執行[5]。
在本系統中,Applet顯示區域中發生的鼠標事件都由 Applet捕獲,并進行處理。處理完成后,調用HTML頁面中的JavaScript函數jar2Htm l(),并將處理的結果作為參數傳到該函數中。在HTML頁面中,可以在jar2Htm l()函數中通過對參數進行一些操作,獲取處理結果,并將結果顯示出來。
常州市新北區企業信息評估系統采用 Java Applet技術實現WebGIS客戶端方案,充分考慮了客戶機、服務器的計算能力和網絡通信量,合理分配服務器端和客戶端的負載,提高用戶與服務器的互操作性,能滿足系統各級用戶的應用需求。在系統實現時只要在中間層也采用Java技術,則可實現整個系統的可跨平臺性。
[1] 宋關福,鐘耳順,王爾琪.WebGIS--基于Internet的地理信息系統[J].中國圖像圖形學報,1998,3:251-254
[2] 費拉納提著,李強譯.JavaScript權威指南[M].第五版.北京:機械工業出版社,2007
[3] 舒忠玲,汪林林.Java Applet在WebGIS中的應用[J].上海工程技術大學學報,2004,18(1):53-57
[4] 楊姍姍,王明軍,杜清運,等.JavaApplet與JavaScript交互方法的探討[J].測繪與空間地理信息,2005,28(4):26-29
[5] 錢貞國.面向互操作的分布式網絡信息系統研究[D].北京:中國科學院研究生院(遙感應用研究所),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
朱學明,注冊測繪師,主要從事工程測量技術與管理、數字城市和地理信息系統研究與應用工作。