張 東, 塔西甫拉提·特依拜, 張 飛, 阿爾達克·克里木, 夏 楠
(1. 新疆大學 資源與環(huán)境科學學院, 新疆 烏魯木齊 830046;2. 新疆大學 綠洲生態(tài)教育部重點實驗室, 新疆 烏魯木齊 830046)
計算機技術應用
基于天地圖的野外考察采樣點管理平臺設計與實現(xiàn)
張 東1,2, 塔西甫拉提·特依拜1,2, 張 飛1,2, 阿爾達克·克里木1,2, 夏 楠1,2
(1. 新疆大學 資源與環(huán)境科學學院, 新疆 烏魯木齊 830046;2. 新疆大學 綠洲生態(tài)教育部重點實驗室, 新疆 烏魯木齊 830046)
闡述了野外考察采樣點管理平臺的設計與實現(xiàn),簡述了開發(fā)過程中使用的技術與軟件。該平臺基于Java語言,采用B/S架構,遵循MVC設計模式,采用Tomcat等開源軟件,利用“天地圖”對外發(fā)布的JavaScript應用程序接口,實現(xiàn)了野外考察采樣點的管理功能。該平臺的運行,對于降低開發(fā)、維護的成本,提高工作效率,促進信息無紙化都有著很好的參考價值。
采樣點管理; 天地圖; WebGIS; MVC; B/S架構
“天地圖”國家地理信息公共服務平臺是“數(shù)字中國”的重要組成部分,由國家測繪地理信息局主導建設,旨在促進信息資源共享與數(shù)據高效利用,提高公共服務能力,更好地滿足國家信息化建設需要,為社會公眾的工作和生活提供方便[1]?!疤斓貓D”運行于網絡環(huán)境,以網站和應用程序接口兩種形式提供“一站式”GIS(geographic information system)服務。
自2011年1月18日“天地圖”正式上線以來[2],它的應用越來越廣。例如:文獻[3]采用RIA(rich internet applications,富網絡應用)技術,調用“天地圖”發(fā)布的應用程序接口,為用戶提供可視化教育信息服務;文獻[4]基于“天地圖”門戶網站,以在線地圖、直通省市等模塊為切入點,探討“天地圖”在中學地理教學中的應用;文獻[5]針對作物秸稈資源調查等應用需求,利用“天地圖”繪制鄉(xiāng)鎮(zhèn)區(qū)域農田電子地圖;文獻[6]通過挖掘與生活相關的地理數(shù)據信息,探討不同類型數(shù)據的解析方法,實現(xiàn)了多種地理數(shù)據源在“天地圖”平臺上的聚合,為公眾提供更豐富的GIS服務。
筆者針對新疆大學綠洲生態(tài)教育部重點實驗室的實際需求,基于“天地圖”發(fā)布的JavaScript應用程序接口和Tomcat、PostgreSQL、ExtJs等開源軟件,開發(fā)野外考察采樣點管理平臺,用于野外考察采樣點的集中管理,以期降低系統(tǒng)的成本、提高工作效率、促進信息無紙化,為科研人員提供采樣點信息展示服務。
系統(tǒng)分析與設計工作在軟件開發(fā)過程中至關重要。該過程不僅決定了軟件開發(fā)的工作量,而且關系到用戶能否認可該軟件產品[7]。
針對新疆大學綠洲生態(tài)教育部重點實驗室的實際需求和現(xiàn)有的軟硬件條件,對采樣點信息進行抽象,構建了野外考察采樣點管理平臺。采樣點按照科研項目進行分類,構建“科研項目—數(shù)據集(按采樣時間分類)—采樣點”三級數(shù)據模型,便于數(shù)據管理功能的設計與實現(xiàn)?;诿恳患墧?shù)據的屬性特征建立了系統(tǒng)數(shù)據庫,設計了系統(tǒng)用戶(User)、科研項目(Project)、數(shù)據集(DataSet)、采樣點(SamplePoint)表。此外,設計操作日志表(OperationLog)用于記錄用戶對數(shù)據的操作行為,防止惡意添加錯誤信息,便于數(shù)據恢復(見圖1)。
圖1 數(shù)據庫設計
2.1 軟件環(huán)境
平臺的開發(fā)基于B/S(瀏覽器/服務器)架構,利用Java編程語言,嚴格遵循MVC(model-view-controller)設計模式。在前端頁面展示、數(shù)據存儲、平臺發(fā)布等過程中,采用開源軟件作為整個平臺的基礎。開源軟件與Java語言的結合,使平臺具有良好的可移植性、跨瀏覽器的特點。系統(tǒng)架構如圖2所示。
圖2 系統(tǒng)架構
采用Windows 7 Professional with Sp1操作系統(tǒng)和Java Development Kit1.7.0_71作為野外考察采樣點管理平臺的基礎環(huán)境,在MyEclipse10開發(fā)環(huán)境下,選擇Tomcat 7.0.57和PostgreSQL 9.3作為Web應用服務器和數(shù)據庫管理系統(tǒng),利用ExtJs 3.4.0作為前端頁面顯示的基本框架,很好地解決了瀏覽器不兼容的問題。平臺的地圖展示、查看采樣點信息等WebGIS功能模塊利用“天地圖”發(fā)布的JavaScript應用程序接口,大大提高了GIS功能的開發(fā)效率。
2.2 開源軟件
開源軟件是以“代碼共享”為宗旨,通過互聯(lián)網將分散在世界各地的開發(fā)人員連在一起,共同對開源軟件進行開發(fā)維護。作為軟件開發(fā)的新模式,開源軟件受到產業(yè)界、學術界的廣泛關注[8]。本系統(tǒng)的開發(fā)采用了Tomcat、PostgreSQL、ExtJs開源軟件,不僅降低了編程難度,而且提高了程序開發(fā)的效率[9]。
(1) Tomcat。它是Apache軟件基金會的Jakarta子項目之一,全面支持J2EE網絡層的各種規(guī)范。Tomcat作為一款輕量級Web應用服務器,因其技術先進、性能穩(wěn)定、免費等特點,深受Java愛好者的喜愛,并得到了許多軟件開發(fā)商的認可[10]。
(2) PostgreSQL。它是以美國加州大學伯克利分校開發(fā)的Postgres為原型的對象關系型數(shù)據庫。PostgreSQL全面支持SQL標準,以對象的形式對空間要素進行抽象,在處理地理空間數(shù)據、空間分析的能力上,PostgreSQL優(yōu)于很多商業(yè)數(shù)據庫[11]。
(3) ExtJs。ExtJs參考了Java Swing機制構建可視化組件,將JavaScript、HTML、CSS三種技術有機結合起來,便于開發(fā)人員快速搭建界面友好的富客戶端Web應用。此外,ExtJs通過底層封裝,對常見的Internet Explorer、Firefox瀏覽器兼容效果良好[12]。
2.3 WebGIS模塊實現(xiàn)
在野外考察采樣點管理平臺中,往往需要查看研究區(qū)影像、地表覆蓋、采樣點分布等。因此,在平臺中添加了WebGIS功能,通過在網頁中加載“天地圖”以WMS方式發(fā)布的地圖,以及對鼠標事件的注冊,實現(xiàn)地圖縮放、平移等功能。在查看采樣點時,平臺通過對數(shù)據庫的查詢,將采樣點信息傳遞給前端頁面,利用ExtJs解析這些信息,并調用“天地圖”發(fā)布的JavaScript程序接口,將采樣點按照最合適的縮放級別進行展示。鼠標放置在采樣點上時,將自動彈出采樣點的信息,如名稱、描述信息等。
在Jsp頁面加載“天地圖”地圖服務的步驟如下:
(1) 在網頁中引入“天地圖”對外發(fā)布的http://api.tianditu.com/js/maps.js文件;
(2) 在Jsp頁面的body內創(chuàng)建div標簽,并對其唯一標識的ID屬性進行賦值,作為展示地圖的區(qū)域;
(3) 在JavaScript代碼中初始化加載地圖對象、比例尺控件、平移控件等;
(4) 設置地圖的選項(縮放級別、中心點位置等);
(5) 設置鼠標功能(滾輪、雙擊事件的處理);
(6) 設置地圖類型(影像、地形或者普通地圖)。
以下是加載地圖的代碼片段:
var map;
functionshowMap() {
//初始化地圖對象
map = new TMap(″iCenter″);
//設置顯示地圖的中心點和級別
map.centerAndZoom(new TLngLat(87.62, 43.82), 12);
var scale = new TScaleControl();
map.addControl(scale); varconfig = {
type : ″TMAP_NAVIGATION_CONTROL_LARGE″, //縮放平移的顯示類型
anchor : ″TMAP_ANCHOR_TOP_LEFT″, //縮放平移控件顯示的位置
offset : [0, 0], //縮放平移控件的偏移值
showZoomInfo : true
};
//創(chuàng)建縮放平移控件對象
varcontrol = new TNavigationControl(config);
map.addControl(control);
map.enableHandleMouseScroll();
map.enableDoubleClickZoom();
map.setMapType(TMAP_HYBRID_MAP);
map.savePosition();
}
至此,代碼編寫完成。當對應html頁面打開時,調用ShowMap方法顯示地圖,顯示效果如圖3所示。其他頁面效果如圖4、圖5所示。
圖3 地圖展示頁面
圖4 采樣點分布頁面
筆者采用Java語言,B/S架構,MVC設計模式和Tomcat、PostgreSQL、ExtJs等開源軟件,對野外考察采樣點管理平臺進行了開發(fā),實現(xiàn)了采樣點信息的集
圖5 采樣點信息展示界面
中式管理,為實驗室人員和野外考察工作者提供了直觀、便捷的采樣點信息服務,同時降低了系統(tǒng)開發(fā)維護的成本,提高了工作效率。圍繞“天地圖”開展系統(tǒng)開發(fā)與應用,可以有效緩解地理信息系統(tǒng)開發(fā)過程中技術難度大、建設成本高、數(shù)據動態(tài)更新難等問題[13]。
在系統(tǒng)的WebGIS模塊中,雖然實現(xiàn)了地圖平移、添加采樣點等功能,但是尚未實現(xiàn)采樣點空間數(shù)據的挖掘,如緩沖區(qū)分析、空間插值等GIS高級應用。深度挖掘并進一步滿足用戶對平臺的新需求,將是下一步研究和重點解決的方向。
References)
[1] 劉達.GIS地圖切片下載拼接的設計與實現(xiàn)[D].北京:北京郵電大學,2013.
[2] 閔宜仁.搶占互聯(lián)網上的話語權:寫在“天地圖”正式版上線三周年之時[J].中國測繪,2014(3):22-23.
[3] 趙軍,車紅巖,馬峻.基于“天地圖”API和FlexRIA的教育資源系統(tǒng)設計研究[J].資源開發(fā)與市場,2014,30(1):6-8.
[4] 張鮮鮮,李久生,趙媛,等.天地圖在中學地理教學中的應用[J].測繪通報,2013(11):126-129.
[5] 張恒敢,楊四軍,常志州.鄉(xiāng)鎮(zhèn)區(qū)域作物秸稈產生量估算方法研究:基于天地圖影像繪制鄉(xiāng)鎮(zhèn)區(qū)域農田電子地圖[J].江蘇農業(yè)科學,2014(6):294-297.
[6] 葉琳.面向“天地圖·常州”的地理數(shù)據解析與聚合方法研究[D].南京:南京師范大學,2013.
[7] 趙瑋.面向對象軟件工程中軟件需求分析[J].山西師范大學學報:自然科學版,2006,20(2):26-28.
[8] 孔一童.開源軟件教學應用綜合研究[D].上海:華東師范大學,2005.
[9] 呂秀琴,張毅.MapWinGIS應用于GIS程序設計實踐[J].實驗技術與管理,2012,29(10):110-113.
[10] 邊清剛,潘東華.Tomcat和Apache集成支持JSP技術探討[J].計算機應用研究,2003(6):12-14.
[11] 曾侃.基于開源數(shù)據庫PostgreSQL的地理空間數(shù)據管理方法研究[D].杭州:浙江大學,2007.
[12] 王建文,張俊明,韓李鵬.基于ExtJS的物資管理系統(tǒng)的設計與實現(xiàn)[J].計算機工程與設計,2010,31(23):5012-5014,5055.
[13] 黃蔚.國家地理信息公共服務平臺天地圖[J].衛(wèi)星應用,2014(1):41-44.
Design and implementation of field sampling site management platform based on map world
Zhang Dong1,2, Tashpolat·Tiyip1,2, Zhang Fei1,2,Ardak·Kelimu1,2, Xia Nan1,2
(1. College of Resources and EnvironmentScience,Xinjiang University, Urumqi 830046, China; 2. Key Laboratory of Oasis Ecology Under Ministry of Education, Xinjiang University, Urumqi 830046, China)
This paper elaborates on the design and implementation of fieldwork sample site management platform, and sketches the technologies and software used in this platform.The platform is based on the Java language, using B/S architecture and strictly following the MVC design pattern. In order to achieve the management functions of field sample sites, the platform employs some open source software and the JavaScript application programming interface released by the “map world.” The operation of the fieldwork samplesitemanagement platform provides a good reference for reducing cost of developing and maintaining, improving work efficiency and promoting a paperless working environment.
management of sampling site; map world; WebGIS; MVC; B/S architecture
2014- 12- 22
國家自然科學基金重點項目(41130531);長江學者和創(chuàng)新團隊發(fā)展計劃項目(IRT1180);國家自然科學基金項目(41361045)
張東(1987—),男,河北邢臺,博士研究生,主要研究方向為干旱區(qū)資源與環(huán)境遙感應用研究
E-mail:giser_zhang@163.com
塔西甫拉提·特依拜(1958—),男(維吾爾族),新疆伊寧,教授,博士生導師,主要研究方向為地圖學與地理信息系統(tǒng).
E-mail:tash@xju.edu.cn
TP315;G434
A
1002-4956(2015)8- 0127- 03