陳坤 逯躍鋒 王少渤 聞俏 劉聰
摘 要:本文基于營山縣農(nóng)村公路、路網(wǎng)等交通基礎(chǔ)設(shè)施數(shù)據(jù)、遙感影像等數(shù)據(jù),結(jié)合WebGIS技術(shù),設(shè)計(jì)開發(fā)了營山縣農(nóng)村公路基礎(chǔ)數(shù)據(jù)管理系統(tǒng),系統(tǒng)實(shí)現(xiàn)了高速可視化展示、快速空間搜索定位、屬性查詢、數(shù)據(jù)統(tǒng)計(jì)分析與定位、行政區(qū)劃定位、地圖輸出等功能。直觀的展示了營山縣的農(nóng)村公路建設(shè)成果,為后續(xù)的農(nóng)村公路建設(shè)與規(guī)劃提供了支持。
關(guān)鍵詞:WebGIS;農(nóng)村公路;數(shù)據(jù)管理
Abstract:This paper designs and develops a basic data management system for rural roads in Yingshan County based on data from Yingshan County s rural roads,road networks and other transportation infrastructure data,remote sensing images,and WebGIS technology.The system implements high-speed visual display,fast spatial search positioning,Attribute query,data statistical analysis and positioning,administrative division positioning,map output and other functions.Intuitively demonstrated the achievements of rural road construction in Yingshan County,and provided support for subsequent rural road construction and planning.
Key words:WebGIS;Rural Road;Data Management
1 緒論
自十八大以來,四川省在交通運(yùn)輸部的大力支持下,開展了“四好農(nóng)村路”的建設(shè)工作,全力攻堅(jiān)克難[1]。隨著四川省農(nóng)村公路建設(shè)工作的全面開展,全省的農(nóng)村公路建設(shè)工作取得了顯著的效果。全省的建制村、村民組通硬化路基本完成。隨著農(nóng)村公路建設(shè)工作開展的規(guī)模越來越大,如何對(duì)農(nóng)村公路等基礎(chǔ)交通數(shù)據(jù)進(jìn)行管理成了一個(gè)亟需解決的問題。簡(jiǎn)單的人工現(xiàn)場(chǎng)核查與地方上報(bào)無法準(zhǔn)確掌握整體的建設(shè)工作成果。因此本文以四川省營山縣為例,基于農(nóng)村公路、路網(wǎng)等路線數(shù)據(jù)、建制村、村民組等點(diǎn)位數(shù)據(jù)、橋梁、產(chǎn)業(yè)園等基礎(chǔ)設(shè)施數(shù)據(jù),結(jié)合WebGIS技術(shù)、HTML、CSS、JavaScript等前端開發(fā)語言,Spring Boot后端框架開發(fā)出基于WebGIS的四川省營山縣農(nóng)村公路管理系統(tǒng),實(shí)現(xiàn)對(duì)營山縣的農(nóng)村公路等基礎(chǔ)數(shù)據(jù)的展示與管理。配合高分辨率的遙感影像直觀的展示營山縣農(nóng)村公路的建設(shè)成果。
2 關(guān)鍵技術(shù)
2.1 WebGIS技術(shù)
WebGIS的中文名稱叫做萬維網(wǎng)地理信息系統(tǒng),同時(shí)也被稱作為網(wǎng)絡(luò)地理信息系統(tǒng)[2]。通俗來說,WebGIS就是運(yùn)行在Web瀏覽器上的GIS系統(tǒng),用戶可以通過瀏覽器對(duì)GIS空間數(shù)據(jù)進(jìn)行一系列的操作,包括對(duì)數(shù)據(jù)進(jìn)行處理、查詢檢索、空間分析、可視化展示等操作[3-4]。WebGIS系統(tǒng)主要采用B/S架構(gòu)[5-6],如圖1所示??蛻舳酥竁eb界面,承擔(dān)著可視化的作用。服務(wù)器端通常是指ArcGIS Server這種由ArcGIS提供的服務(wù)器,在后臺(tái)以連接數(shù)據(jù)庫的形式,負(fù)責(zé)數(shù)據(jù)的動(dòng)態(tài)存儲(chǔ)和修改。用戶通過Web界面的操作,將請(qǐng)求發(fā)送到服務(wù)器端,服務(wù)器端通過HTTP協(xié)議接收到請(qǐng)求后,對(duì)請(qǐng)求進(jìn)行分析,然后根據(jù)請(qǐng)求的需求訪問相應(yīng)的數(shù)據(jù)庫,最后將請(qǐng)求的處理結(jié)果返回到客戶端的Web界面。
2.2 ArcGIS API for JavaScript
ArcGIS API for Javascript是基于Dojo框架和REST實(shí)現(xiàn)的一套編程接口[7]。開發(fā)人員通過調(diào)用REST接口便能夠與ArcGIS for Server發(fā)布的數(shù)據(jù)服務(wù)進(jìn)行交互。ArcGIS在其官網(wǎng)提供了各個(gè)版本的API文檔和示例,其API文檔具有可讀性強(qiáng)的優(yōu)點(diǎn),官網(wǎng)提供的示例對(duì)API的使用提供了詳細(xì)的說明。開發(fā)者僅需在代碼中中引入ArcGIS API for JavaScript框架,通過調(diào)用API中的方法,便可以實(shí)現(xiàn)空間數(shù)據(jù)展示、圖形繪制、符號(hào)渲染、查詢檢索、地理處理、影像處理等功能。
3 系統(tǒng)設(shè)計(jì)
3.1 系統(tǒng)架構(gòu)設(shè)計(jì)
系統(tǒng)采用B/S架構(gòu)模式,總體架構(gòu)如圖2所示,包括應(yīng)用層、服務(wù)層與數(shù)據(jù)層三個(gè)部分。各部分功能分別為:(1)應(yīng)用層是系統(tǒng)的功能實(shí)現(xiàn)層,為系統(tǒng)用戶提供操作界面,用戶通過相應(yīng)的操作,發(fā)送請(qǐng)求,并將請(qǐng)求結(jié)果在Web界面中展示。(2)服務(wù)層也被稱為應(yīng)用組件層,起到連接數(shù)據(jù)庫與服務(wù)層的作用,提供系統(tǒng)功能用到的服務(wù),為應(yīng)用層提供服務(wù)支撐。(3)數(shù)據(jù)層對(duì)整個(gè)系統(tǒng)起到支撐的作用,對(duì)數(shù)據(jù)進(jìn)行管理與存儲(chǔ)。該層由空間數(shù)據(jù)庫與屬性數(shù)據(jù)庫兩部分組成,為系統(tǒng)提供數(shù)據(jù)支撐。
3.2 數(shù)據(jù)庫設(shè)計(jì)
根據(jù)系統(tǒng)業(yè)務(wù)要求,按照命名規(guī)范、最小冗余、安全性等原則進(jìn)行數(shù)據(jù)庫的建設(shè)工作[8]。當(dāng)前常用的數(shù)據(jù)庫有Oracle、MySQL、SQL Server,通過對(duì)比,SQL Server作為一個(gè)完全Web支持的平臺(tái),其在數(shù)據(jù)管理和分析方面有著較大的優(yōu)勢(shì)。因此采用SQL Server作為本系統(tǒng)的數(shù)據(jù)庫。數(shù)據(jù)庫框架如圖3所示:
(1)空間數(shù)據(jù)庫:專門用來存儲(chǔ)地理信息數(shù)據(jù),包括路線數(shù)據(jù)、點(diǎn)位數(shù)據(jù)、基礎(chǔ)設(shè)施數(shù)據(jù)等。
(2)屬性數(shù)據(jù)庫:屬性數(shù)據(jù)包括系統(tǒng)管理數(shù)據(jù)與地理信息數(shù)據(jù)的屬性信息。
3.3 系統(tǒng)功能設(shè)計(jì)
根據(jù)管理系統(tǒng)的需求,本文將系統(tǒng)功能設(shè)計(jì)為五大模塊,分別為:(1)高速可視化展示瀏覽模塊,用戶可以進(jìn)行圖層加載、底圖選擇、平移、放大等操作。(2)快速搜索定位模塊,用戶通過選擇查詢圖層與關(guān)鍵字類型,輸入查詢關(guān)鍵字,如路線編碼、路線名稱等,實(shí)現(xiàn)快速搜索并定位高亮。(3)行政區(qū)劃定位,用戶通過點(diǎn)擊全縣的行政區(qū)劃,包括鄉(xiāng)鎮(zhèn)與建制村,系統(tǒng)進(jìn)行定位到該區(qū)域。(4)基礎(chǔ)地圖操作模塊,用戶通過對(duì)地圖操作,實(shí)現(xiàn)量測(cè)、拉框查詢、地圖輸出等功能。(5)數(shù)據(jù)統(tǒng)計(jì)與定位模塊,用戶通過行政區(qū)劃選擇要統(tǒng)計(jì)的區(qū)域,以表格的形式展現(xiàn)該區(qū)域所有的交通設(shè)施數(shù)據(jù),并且能夠?qū)δ骋痪唧w數(shù)據(jù)實(shí)現(xiàn)定位高亮功能。
4 系統(tǒng)實(shí)現(xiàn)
本文根據(jù)實(shí)際的業(yè)務(wù)需求,設(shè)計(jì)了系統(tǒng)的整體框架,采用SQL Server 2014數(shù)據(jù)庫,使用IntelliJ IDEA 2018.1.6作為開發(fā)平臺(tái),系統(tǒng)前端以HTML+CSS+JavaScript的開發(fā)模式,結(jié)合ArcGIS API for JavaScript進(jìn)行地圖交互功能開發(fā),并使用Layui框架進(jìn)行數(shù)據(jù)的可視化表達(dá)。后臺(tái)采用Spring Boot框架實(shí)現(xiàn)與前端系統(tǒng)的通信,利用ArcGIS for Server進(jìn)行地圖服務(wù)的發(fā)布。基于以上開發(fā)語言與技術(shù),實(shí)現(xiàn)了基于WebGIS的營山縣農(nóng)村公路基礎(chǔ)數(shù)據(jù)管理系統(tǒng)的開發(fā)。系統(tǒng)主頁如圖4所示:
系統(tǒng)功能。(1)高速可視化展示瀏覽模塊。該模塊主要是對(duì)系統(tǒng)的數(shù)據(jù)服務(wù)進(jìn)行疊加展示,用戶可以點(diǎn)擊左側(cè)圖例,進(jìn)行數(shù)據(jù)服務(wù)中某一圖層的加載,同時(shí)用戶還可以切換底圖,底圖包括天地圖在線路網(wǎng)、在線影像、在線地形、注記等。同時(shí)可以對(duì)地圖進(jìn)行拖拽、漫游、放大縮小等操作。
(2)快速空間搜索定位模塊。該模塊只要是對(duì)數(shù)據(jù)服務(wù)進(jìn)行快速搜索定位,用戶可以對(duì)系統(tǒng)所有的圖層進(jìn)行搜索定位,首選需要選擇搜索圖層,然后選擇搜索關(guān)鍵字類別,如路線名稱、路段編碼、路線編碼等,然后輸入關(guān)鍵字,通過模糊查詢實(shí)現(xiàn)對(duì)要素的快速定位,將該要素高亮顯示并縮放到視圖中央。
(3)行政區(qū)劃定位模塊。該模塊主要是實(shí)現(xiàn)全縣行政區(qū)域的定位,通過點(diǎn)擊上方的營山縣,會(huì)出現(xiàn)全縣的行政區(qū)劃,包括鄉(xiāng)鎮(zhèn)與建制村,通過點(diǎn)擊相應(yīng)的區(qū)域,系統(tǒng)將自動(dòng)定位到該區(qū)域,并將該區(qū)域縮放到當(dāng)前視圖中央。
(4)基礎(chǔ)地圖操作模塊。該模塊主要是與地圖服務(wù)的交互操作,用戶可以進(jìn)行地圖輸出、量測(cè)、拉框查詢等操作。地圖輸出會(huì)將當(dāng)前視圖內(nèi)所有的要素進(jìn)行打印輸出,輸出格式包括jpg、png等多種格式。量測(cè)功能通過點(diǎn)擊兩點(diǎn),系統(tǒng)自動(dòng)計(jì)算距離,并以popup展示距離,支持多點(diǎn)量測(cè)。拉框查詢功能需要用戶先確定查詢圖層,用戶以框選的形式與地圖交互,以表格形式展示選中的要素,并可以點(diǎn)擊定位某一要素,同時(shí)也可以查看某一數(shù)據(jù)的全部屬性信息。
(5)數(shù)據(jù)統(tǒng)計(jì)與定位模塊。該模塊主要是對(duì)農(nóng)村公路、路網(wǎng)等交通設(shè)施數(shù)據(jù)的統(tǒng)計(jì)展示,以表格的形式為用戶展示農(nóng)村公路的建設(shè)情況,默認(rèn)展示全縣的數(shù)據(jù)。用戶可以點(diǎn)擊行政區(qū)劃的形式,展示某個(gè)具體鄉(xiāng)鎮(zhèn)或者建制村的數(shù)據(jù)。用戶通過點(diǎn)擊定位,實(shí)現(xiàn)對(duì)表格中某一具體數(shù)據(jù)的定位縮放,并將其高亮顯示。
5 結(jié)語
本文基于農(nóng)村公路、路網(wǎng)等交通基礎(chǔ)數(shù)據(jù)、遙感影像等數(shù)據(jù),結(jié)合WebGIS技術(shù)與HTML、CSS、JavaScript、Java、Spring Boot框架等開發(fā)語言與框架設(shè)計(jì)并實(shí)現(xiàn)了基于WebGIS的四川省營山縣農(nóng)村公路基礎(chǔ)數(shù)據(jù)管理系統(tǒng)。該系統(tǒng)部署簡(jiǎn)單、維護(hù)方便。通過農(nóng)村公路等交通基礎(chǔ)數(shù)據(jù)的可視化瀏覽與表格展示的方式直觀的展示營山縣的農(nóng)村公路建設(shè)成果,為營山縣后續(xù)的農(nóng)村公路建設(shè)與規(guī)劃提供了參考。
參考文獻(xiàn):
[1]咬定目標(biāo) 凝聚合力 堅(jiān)決打贏交通脫貧攻堅(jiān)戰(zhàn)[J].四川黨的建設(shè),2018(22):2.
[2]Chang Y,Park H.Development of a web-based Geographic Information System for the management of borehole and geological data[J].Computers & geosciences,2004,30(8):887-897.
[3]付品德,孫九林,秦耀辰,等.Web GIS:原理與應(yīng)用[M].高等教育出版社,2012.
[4]張明安,馬友華,褚進(jìn)華,等.基于WebGIS的縣域測(cè)土配方施肥系統(tǒng)的建立[J].農(nóng)業(yè)網(wǎng)絡(luò)信息,2011(6):20-23.
[5]唐月.基于B/S模式的廣電地理信息系統(tǒng)(GIS)及其應(yīng)用[J].有線電視技術(shù),2018(02):21-26.
[6]王晉.B/S模式建立的Web數(shù)據(jù)上報(bào)系統(tǒng)在護(hù)理管理中的應(yīng)用[J].天津護(hù)理,2017,25(06):546-547.
[7]鐘立明,景寧,熊偉.基于ArcGIS API for JavaScript的路徑規(guī)劃方法實(shí)現(xiàn)[J].數(shù)字通信世界,2019(08):88-90.
[8]張土前,蔣平安,鄒鵬.基于RFID與WebGIS的阿克蘇蘋果質(zhì)量安全溯源系統(tǒng)[J].新疆農(nóng)業(yè)科學(xué),2012,49(08):1519-1524.