GeoServer 基礎(chǔ)教程(五):使用 GeoServer 和 OpenLayers 發(fā)布地圖服務(wù)

在前面幾節(jié)的關(guān)于 GeoServer 的基礎(chǔ)教程中,我們介紹了如何使用 GeoServer 發(fā)布地圖數(shù)據(jù)等基本的服務(wù)器端的操作,這一節(jié)我們繼續(xù)學(xué)習(xí)如何使用 GeoServer 和 OpenLayers 的結(jié)合來(lái)發(fā)布地圖服務(wù)。

OpenLayers(http://openlayers.org)是一個(gè)專(zhuān)為 Web GIS 客戶(hù)端開(kāi)發(fā)提供的 JavaScript 類(lèi)庫(kù)包,用于實(shí)現(xiàn)標(biāo)準(zhǔn)格式發(fā)布的地圖數(shù)據(jù)訪(fǎng)問(wèn)。OpenLayers 支持的地圖來(lái)源包括 Google Maps、Yahoo、 Map、微軟 Virtual Earth 等,用戶(hù)還可以用簡(jiǎn)單的圖片地圖作為背景圖,與其他的圖層在 OpenLayers 中進(jìn)行疊加。除此之外,OpenLayers 實(shí)現(xiàn)訪(fǎng)問(wèn)地理空間數(shù)據(jù)的方法都符合行業(yè)標(biāo)準(zhǔn)。OpenLayers 支持 Open GIS 協(xié)會(huì)制定的 WMS(Web Mapping Service)和 WFS(Web Feature Service)等網(wǎng)絡(luò)服務(wù)規(guī)范,可以通過(guò)遠(yuǎn)程服務(wù)的方式,將以 OGC 服務(wù)形式發(fā)布的地圖數(shù)據(jù)加載到基于瀏覽器的 OpenLayers 客戶(hù)端中進(jìn)行顯示。

使用開(kāi)源的 GeoServer 和 OpenLayers 發(fā)布地圖服務(wù)在 Web GIS 部署中比較常用。本文將結(jié)合 GeoServer 和 OpenLayers 發(fā)布一個(gè)地圖服務(wù)示例。

大家可以下載我編寫(xiě)的示例程序文件作為學(xué)習(xí)參考。下載地址:http://pan.baidu.com/share/link?shareid=4130147131&uk=1746237888。下面是效果圖:

發(fā)布地圖數(shù)據(jù)

要提供 Web GIS 服務(wù),首要的是提供所需的地圖數(shù)據(jù),我們首先根據(jù) GeoServer 基礎(chǔ)教程(三):部署發(fā)布 Shapefile 地圖數(shù)據(jù) 一文所講,部署好需要的地圖數(shù)據(jù)。具體發(fā)布的地圖數(shù)據(jù)大家可以使用文中提到的示例數(shù)據(jù),也可以使用自己的地圖數(shù)據(jù)。

我的示例數(shù)據(jù)使用的是同濟(jì)大學(xué)校園地圖,上文中的下載文件里并不包含地圖數(shù)據(jù),所以大家應(yīng)該替換使用自己的地圖數(shù)據(jù)。

編寫(xiě)網(wǎng)頁(yè) html 文件

網(wǎng)頁(yè)的內(nèi)容最終需要利用 html 展示出來(lái),我們需要對(duì) html 標(biāo)記語(yǔ)言有基本的了解,如果需要對(duì)樣式進(jìn)行美化還需要 css 的相關(guān)知識(shí),這里不再贅述,對(duì)次相關(guān)知識(shí)不熟悉的朋友,建議先閱讀 w3school 提供的 html 基礎(chǔ)教程css 基礎(chǔ)教程。

此處對(duì)應(yīng) index.html 和 style.css 文件。

引入使用 OpenLayers 控制發(fā)布地圖數(shù)據(jù)

OpenLayers 實(shí)際上是一個(gè)專(zhuān)為 Web GIS 客戶(hù)端開(kāi)發(fā)提供的 JavaScript 類(lèi)庫(kù)包。如果需要真正用好這個(gè)工具,我們必須具備熟練的 JavaScript 相關(guān)知識(shí)??紤]到我們的應(yīng)用比較簡(jiǎn)單,大家可以直接學(xué)習(xí) OpenLayers 的用戶(hù)文檔(http://docs.openlayers.org)來(lái)熟悉 JavaScript 的語(yǔ)法知識(shí)等。

此處對(duì)應(yīng) config.js 文件。

繼續(xù)美化或增強(qiáng)功能

至此,使用 GeoServer 和 OpenLayers 發(fā)布地圖服務(wù)已經(jīng)圓滿(mǎn)完成了,不出意外的話(huà),我們已經(jīng)可以通過(guò)瀏覽器來(lái)訪(fǎng)問(wèn)剛剛發(fā)布的地圖服務(wù)頁(yè)面了。隨著對(duì) GeoServer 和 OpenLayers 的應(yīng)用能力提升,大家可以根據(jù)自身需求,繼續(xù)美化或者增強(qiáng)此地圖服務(wù)的功能。

到這里,GeoServer 基礎(chǔ)教程系列已經(jīng)基本完成,愿大家有所得。關(guān)于 GeoServer 和 OpenLayers 的學(xué)習(xí),大家有何疑問(wèn),歡迎與我交流。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容