利用GeoServer發佈圖層並用OpenLayers展示

時間:2019年11月11日 21:38:55

利用GeoServer發佈圖層並用OpenLayers展示

文章分爲兩部分,第一部分爲採用GeoServer發佈圖層,第二部分爲採用OpenLayers展示

GeoServer發佈圖層

第一步、首先在本機電腦安裝好GeoServer,然後登陸到界面如下圖所示,找到工作區,然後添加新的工作區
圖1-1
第二步、新建工作區並提交,如下圖所示
圖1-2
第三步、找到數據存儲,然後選擇shp文件作爲數據源發佈,如下圖所示
圖1-3
第四不、新建矢量數據源,依次填入以下信息並保存
在這裏插入圖片描述

第五步、保存後,新建圖層,點擊發布,發佈之後進入編輯圖層,如下圖所示(主要選擇4326中的WGS84座標系,然後依次計邊界座標)
在這裏插入圖片描述
第六步、保存之後,打開左邊的Layer Preview如下,點擊OpenLayers KML即可查看發佈的圖層,如下圖所示
在這裏插入圖片描述
在這裏插入圖片描述
到此已經將shp發佈到GerServer上,並展示

OpenLayers展示地圖

在OpenLayers中展示主要是採用Js編寫,代碼如下

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <link rel="stylesheet" href="./ol.css" type="text/css">
  <script src="./ol.js"></script>
  <script
    src="https://cdn.polyfill.io/v2/polyfill.min.js?features=requestAnimationFrame,Element.prototype.classList,URL">
    </script>
  <style>
    .map {
      height: 980px;
      width: 100%;
    }
  </style>
</head>
<body>
  <div id="map" class="map"></div>
  <script type="text/javascript">
    var map = new ol.Map({
      target: 'map',
      layers: [
        new ol.layer.Tile({
          source: new ol.source.TileWMS({
            url: 'http://localhost:8080/geoserver/TestGerServer/wms', //  這個地址是在geoserver裏面進行圖層預覽的地址是一致
            params: {
              'LAYERS': 'TestGerServer:BL', // 這裏的名字需要與空間定義的一樣
              'TILED': true
            },
            serverType: 'geoserver',
            transition: 0
          })
        })
      ],
      view: new ol.View({
        center: ol.proj.fromLonLat([116,40]),   //   中心座標  
        zoom: 8
      })
    });
  </script>
</body>
</html>

上述代碼主要解釋如下
1、url地址:爲上述GerServer中第六步發佈圖層時的地址,其和代碼一致的部分即可
2、LAYERS:爲上述GerServer中第六步發佈圖層時Layer Preview中的Name屬性值

在本地編輯好Js,後保存爲html文件,打開如下圖所示
圖1-7
至此,採用OpenLayers打開GerServer發佈的圖層結束

這是本人在工作中的一點小總結,希望能給大家帶來一點幫助,謝謝觀看!!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章