一、開篇
此篇文章我們使用GeoServer官方網站提供的矢量道路數據nyc_roads.zip來演示如何使用GeoServer發佈矢量數據。該矢量數據包含了部分紐約的道路信息,我們本次就使用此矢量文件(ShapFile)來進行部署和發佈。
文件下載地址:https://pan.baidu.com/s/1I0xb6iKQoM3gDX_6os3E0A 提取碼:mjhw
如果沒有對GeoServer的文件系統進行更改的話,那複製解壓上面文件完成後的文件目錄應該是:根目錄/data_dir/data/nyc_roads,然後就是四個所需的Shapefile格式文件。
二、新建工作區
部署地圖數據第一個步驟即爲新建一個工作區,工作區(WorkSpace)是一個用於組織類似圖層數據的容器。我們常常會把一些相關的圖層數據放到一個工作區裏。
按照如下的步驟進行操作:
1、登錄GeoServer的Web管理界面,依次點擊右側的數據模塊中的工作區,打開工作區管理頁面,如下圖所示:
2、在上圖所示的頁面點擊《添加新的工作區》超鏈接,打開添加新工作區的頁面,如下圖所示:
3、進入新建工作區的界面,在這裏需要輸入工作區的Name(名字)和命名空間URL。
4、各項數據填寫完畢之後,點擊下方的《提交》按鈕,完成工作區的創建。如下圖所示:
從上圖可以看到,我們新增的工作區已經在列表中出現了。後續對工作區的信息維護修改、以及刪除等操作也都是在這個頁面來完成的。
三、新建數據存儲區
爲了添加nyc_roads中的Shapefile地圖數據,必須建立一個數據存儲。數據存儲實際上維護着地圖數據和文件系統中的文件夾的映射關係。
1、點擊數據模塊中的《數據存儲》菜單項,打開數據存儲管理頁面,如下圖所示:
2、點擊《添加新的數據存儲》超鏈接,打開添加數據存儲的頁面,如下圖所示,可以看到GeoServer支持的衆多矢量數據和柵格數據源:
3、因爲我們要發佈的是Shapefile地圖數據格式,我們點選《Shapefile – ESRI(tm) Shapefiles (*.shp)》即可。打開如下圖所示的頁面:
4、然後按照圖中所示填寫好相關信息。說明如下:
5、各項數據內容填寫完畢之後,點擊《保存》按鈕,完成數據源的創建。如下圖所示:
如上圖所示,系統已經自動跳轉到了《新增圖層》的頁面,接下來的內容用來說明如何新建圖層。
四、創建圖層
新建數據存儲後,默認會停留在新建圖層的界面,我們直接在此開始建立圖層。如下圖所示:
1、因爲只有一個圖層nyc_roads,點擊操作列中的《發佈》進入圖層編輯界面。如下圖所示:
2、圖層編輯界面定義了圖層的數據和發佈參數,需要填寫相關的信息。主要信息的說明如下:
3、填入了名稱、標題、摘要等主要信息後,還需要定義重要的SRS信息和邊框信息。如下圖所示:
主要內容說明如下:
4、最後點擊《保存》按鈕進行發佈。
發佈成功後,頁面自動跳轉到圖層管理頁面。從上圖可以看到,列表中的圖層名稱包含了工作區和圖層的名稱。
五、圖層預覽
爲了驗證我們部署發佈Shapefile地圖數據成功與否,可以對剛剛發佈的數據進行預覽。
1、點擊左側數據模塊的《Layer Preview》,打開如下圖所示的圖層預覽列表頁面:
2、找到我們剛剛發佈的地圖圖層nyc_roads,點擊《Openlayers》超鏈接進行預覽,如果成功則可以看到下圖所示的道路分佈地圖:
在這裏,我們已經可以通過左上角默認的控制條來進行放大縮小與平移,還能點擊圖中的地理要素來查看屬性。
測試得到的URL爲:
http://localhost:8080/geoserver/newyork/wms?service=WMS&version=1.1.0&request=GetMap&layers=newyork%3Anyc_roads&bbox=984018.1663741902%2C207673.09513056703%2C991906.4970533887%2C219622.53973435296&width=506&height=768&srs=EPSG%3A2908&format=application/openlayers
六、圖層疊加
在訪問WMS服務的時候通常都是將多個地圖圖層進行疊加組合,才能完成一個相對完整的地圖界面呈現。在訪問WMS服務的時候圖層疊加非常簡單,就是在WMS請求地址的layers參數後面用英文逗號(「,」)將多個圖層進行分割就可以了。下面的WMS服務請求地址就疊加了3個地圖圖層:
http://localhost:8080/geoserver/newyorkroad/wms?service=WMS&version=1.1.0&request=GetMap&layers=newyork:layer1,newyork:layer2,newyork:layer3&styles=&bbox=105.286,28.163,110.194,32.203&width=512&height=421&srs=EPSG:4326&format=application/openlayers
layers=newyork:layer1,newyork:layer2,newyork:layer3,表示此WMS服務請求是由三個地圖圖層疊加組合而成的。
七、參考資料 http://blog.csdn.net/mingzai624z https://blog.csdn.net/u010723516/article/details/79012445 https://blog.csdn.net/wo_buzhidao/article/details/78713426