今天项目交付了无聊到爆,在群里装逼也没人搭理我。还是来写博客吧

目录

  1. 前言:
  2. geoserver插件:
  3. 矢量切片发布
  4. 矢量切片对比

前言:

什么是矢量切片?直接来怪叔叔的博客。GeoServer官方教程:矢量切片

geoserver插件:

GeoServer (其他版本的可以吧最后面换成自己的版本号)

geoserver 连接mysql配置 geoserver 教程_缩放

下载插件后放到安装目录:D:\ProgramFiles\GeoServer 2.13.1\webapps\geoserver\WEB-INF\lib下然后启动服务登录主页面。

矢量切片发布

1.创建工作组

geoserver 连接mysql配置 geoserver 教程_数据_02

2.新建数据存储

geoserver 连接mysql配置 geoserver 教程_缩放_03

以发布多个shp文件为例:上面红框分别选自己shp所在的文件夹,编码选择GB2312。点击确定

3.图层=》添加新的资源=》 选择刚刚的数据 =》发布

数据选项卡先确定数据范围:点  从数据中获取范围就行,然后切换到Tile Caching勾选下面红框,点确定

geoserver 连接mysql配置 geoserver 教程_缩放_04

正确替换插件文件的话能看到上面红框的选项,不然的话只有个application/x-utf,而且这个发布的矢量切片预览是什么也没有报错X为null。

geoserver发布矢量切片报错:ol.js:272 Uncaught TypeError: Cannot read property 'X' of null

4.矢量切片查看

选pdf那一个是mapbox的。右键查看图片可以看到确实是发布为切片的了

geoserver 连接mysql配置 geoserver 教程_数据_05

geoserver 连接mysql配置 geoserver 教程_矢量切片_06

再看上面url既不是wms也不是wfs。

矢量切片对比

这里对比只是再geoserver里对比,原理啥的我也不懂就不说了。

wms服务:每次缩放只返回一张图片,点击左边的图片,会根据点击处的位置去查是否有内容如果有返回url再根据url返回被点击的元素的属性。

geoserver 连接mysql配置 geoserver 教程_Geoserver_07

WFS——geojson的话:没啥好说的直接返回json数据,再openlayer里加载wfs的话被加载的要素是自带属性的,可以直接获取。

geoserver 连接mysql配置 geoserver 教程_Geoserver_08

矢量切片:每次缩放返回一堆二进制图片,但是图片是不能被读取识别的额。

geoserver 连接mysql配置 geoserver 教程_Geoserver_09

由此也可以看出只有wfs是可以编辑的,其他不管是wms还是矢量切片都不能编辑额。

关于openlayer调用,后面有机会出个ol的专栏再细说吧,先放张效果图。

geoserver 连接mysql配置 geoserver 教程_Geoserver_10