1. 概述

我们知道将GIS数据大致分成矢量数据和栅格数据(地形和三维模型都是兼具矢量和栅格数据的特性)。但是如果用来Web环境中,那么使用图片这个栅格形式的数据载体无疑是最为方便的,因为图片本身就是一种非常重要的GUI元素,使用非常广泛。另外,基于矢量的地图叫做线划图,基于栅格的地图则是影像图。这也是网络地图服务(Web Map Service,以下简称WMS)的含义,可以将传统意义上的矢量数据或者栅格数据,发布成图片形式的地图数据,供浏览器的用户使用。

说再多的概念不如实际的举例更让人印象深刻,笔者这里就讲讲如何通过前面安装配置好的GeoServer发布一个WMS/WFS服务。在之前的文章《地图服务器GeoServer的安装与配置》中我们安装配置了一个GeoServer,不过进入的网页是一个没有登录的主页。要使用发布地图服务的功能,首先要登录。GeoServer默认的用户名是admin,默认密码是geoserver,登录后的主页如下图所示:

依次进入或点击【数据】——【工作空间】——【添加新的工作空间】,工作空间是用来管理发布地图的集合,如下图所示:

在【新建工作空间】中输入名称以及命名空间URI。名称可以自己定义,命名空间URI在这个例子中不重要,只需要保持与别的工作空间不一致即可,如下图所示。最后点击保存,工作空间就创建成功了,这时会回到之前的工作空间页面,不过可以看到自己新建的工作空间。

2. 矢量数据源

接下来依次进入或点击【数据】——【存储仓库】——【添加新的存储仓库】,准备发布地图数据源,如下图所示:

此时会进入【新建数据源】页面,如下图所示。在这个页面中我们可以看到支持的数据源,包括我们很熟悉的矢量数据如Shapefile,栅格数据如GeoTIFF。值得一提的是还支持PostGIS数据库,甚至接入另一个WMS或者WMTS数据源。

这里我们选择Shapefile,进入【新建矢量数据源】页面,如下图所示。其中,工作区我们选择刚刚创建好的工作区,数据源名称则可以自己定义。然后点击连接参数中的浏览按钮选择Shapefile文件的位置,DBF字符集设置矢量数据属性的字符编码。其他配置项默认,最后点击保存按钮。

此时会进入【新建图层】页面,如下图所示。点击操作下面的发布按钮。

此时进入的是【编辑图层】页面的【数据】选项卡。这些配置项中主要是要配置坐标参考系统和边框范围。作为初学者建议将本机SRS和定义SRS保持一致,Native Bounding Box通过点击【从数据中计算】按钮获得,纬度/经度边框通过点击【Compute from native bounds】按钮获得。如下图所示:

点击保存按钮会进入【图层预览】页面(点击左侧的【图层预览】也可以),如下图所示:

点击我们发布图层的所有格式复选框,我们可以看到这个图层数据同时支持WMS和WFS服务,我们需要什么样服务类型的接口,可以直接点击进去获取具体的地址路径即可。如下图所示。也就是说通过GeoServer发布地图服务,并不是我们所预想的那样,先选择具体的服务类型,再按照服务类型进行操作;而是实现了地图数据发布与地图服务接口的分离,同一个数据可以对应多个服务接口。

如果我们选择浏览器支持的数据格式如WMS的JPEG,浏览器会直接打开这个数据;如果选择浏览器不支持的数据格式如WFS的KML,浏览器会直接下载。有点特别的是WMS的OpenLayers格式,可以直接提供一个地图网页,可以进行交互操作、显示地理位置、拾取特征属性以及选项配置等,如下图所示:

3. 栅格数据源

发布栅格数据源与发布矢量数据源的步骤基本一致,区别在于在新建数据源的时候选择栅格数据源GeoTIFF。在出现的【添加栅格数据源】页面内进行配置,选择创建好的工作空间,自定义数据源名称,以及选择一个栅格数据的文件路径,如下图所示:

除了上述配置,其余配置步骤基本不变。通过这种方式发布的栅格数据就只有WMS服务而没有WFS服务了,如下图所示。这其实也不难理解,将矢量数据栅格化很容易,但是将栅格数据矢量化就相对较难。

同样还是选择WMS服务的OpenLayers格式,显示的地图网页如下图所示。这个网页同样可以交互操作、显示地理位置、以及选项配置等,不过有意思的是还可以点击拾取鼠标位置的具体像素值。

GeoServer发布地图服务(WMS、WFS)的更多相关文章

  1. geoserver发布地图服务WMS

    wms服务发布: 1.打开geoserver管理首页(网址为http://localhost:8080/geoserver/web/),并使用安装时设置的帐户名和密码登录(这里是admin/geose ...

  2. geoserver发布地图服务

    1.      Geoserver启动 blog.csdn.net 2014-09-18 20:30 Geoserver是著名的开源GIS软件之一.也是项目中常用的地图服务软件.基于geoserver ...

  3. geoserver发布地图服务WMTS

    WMTS: 切片地图web服务(OpenGIS Web Map Tile Service) WMTS提供了一种采用预定义图块方法发布数字地图服务的标准化解决方案.WMTS弥补了WMS不能提供分块地图的 ...

  4. postgresql,postgis,geoserver 发布地图服务,并用.net mvc openlayers3进行显示

    1.所需工具 postgres版本 9.6.1 对应的postgis geoserver 2.8.2 openlayers3 2.将postgres postgis ,geosever安装好,再用如下 ...

  5. GeoServer自动发布地图服务

    1 NetCDF气象文件自动发布案例 GeoServer是一个地理服务器,提供了管理页面进行服务发布,样式,切片,图层预览等一系列操作,但是手动进行页面配置有时并不满足业务需求,所以GeoServer ...

  6. 基于GeoServer切片地图服务的发布

    接着上一篇文章,如何将JPG格式的图片转化为带地理坐标的TIFF格式里提及的最近的一个项目,数据源是一张高分辨率的2.5维图片,现在已经成功转化成了带有地理坐标的TIFF格式.下面将介绍借助GeoSe ...

  7. GeoServer在Linux上源码安装、启动、发布地图服务

    1. 环境准备 笔者此次使用的Linux系统是CentOS 8 ,没错,目前已经停止维护,但就操作而言,和其他Linux发行版大同小异 目前的GeoServer版本是2.21 1.1 Git环境 yu ...

  8. geoserver 通过代码实现发布地图服务

    GeoServer:代码实现批量发布地图服务 利用GeoServer发布WCS服务,那么如果我有很多数据需要进行发布,这样利用GeoServer提供的UI界面进行操作显然很不显示.那能不能利用GeoS ...

  9. 手把手教你怎么用ArcgisOnline发布地图服务

    Arcgis推出了Arcgis Online,但是大家都不知道这是个什么东西,怎么用这个东西,今天这篇文章手把手的教你如何使用Arcgisonline发布地图服务. 一.ArcgisOnline简介 ...

  10. JavaWeb和WebGIS学习笔记(六)——使用ArcGIS for Server发布地图服务

    系列链接: Java web与web gis学习笔记(一)--Tomcat环境搭建 Java web与web gis学习笔记(二)--百度地图API调用 JavaWeb和WebGIS学习笔记(三)-- ...

随机推荐

  1. Solution -「洛谷 P3267」「JLOI 2016」「SHOI 2016」侦察守卫

    Description Link. 给你一棵树,放置守卫在某个点上面需要一定代价和一定的有效范围.让你覆盖若干指定点,求最小代价 Solution 算法标签: $\ \ \ \ \ \ \ \ \ $ ...

  2. Vitess全局唯一ID生成的实现方案

    为了标识一段数据,通常我们会为其指定一个唯一id,比如利用MySQL数据库中的自增主键. 但是当数据量非常大时,仅靠数据库的自增主键是远远不够的,并且对于分布式数据库只依赖MySQL的自增id无法满足 ...

  3. CF1746F Kazaee

    prologue 数组范围一定要看好了开,不然容易我一样,调试调了一页多. 还有就是不要傻乎乎地只跑一次和哈希,因为和哈希(从下面地佬的题解中才知道)它其实算作是一种 trick(类比SA(Stimu ...

  4. 01--OpenStack 手动安装手册(Icehouse)

    #OpenStack 手动安装手册(Icehouse) 声明:本博客欢迎转发,但请保留原作者信息!作者:[罗勇] 云计算工程师.敏捷开发实践者博客:http://yongluo2013.github. ...

  5. client-go实战之八:更新资源时的冲突错误处理

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是<client-go实战> ...

  6. JDK21的虚拟线程是什么?和平台线程什么关系?

    虚拟线程(Virtual Thread)是 JDK 而不是 OS 实现的轻量级线程(Lightweight Process,LWP),由 JVM 调度.许多虚拟线程共享同一个操作系统线程,虚拟线程的数 ...

  7. shell- ssh免密登录脚本

    #!/bin/sh . /etc/init.d/functions #1.product key pair /usr/bin/rm -f .ssh/* 2&>/dev/null [ -f ...

  8. 实战攻防演练-利用Everything搜索软件进行内网后渗透利用

    前言 Everything是一款很出名的文件搜索工具,基于文件.文件夹名称的快速搜索的轻量级的软件,而早在几年前就有很多apt组织利用everything来进行文件查找等,前几年在T00ls上也有人发 ...

  9. SpringBoot数据响应、分层解耦、三层架构

    响应数据 @ResponseBody 类型:方法注解.类注解 位置:Controller方法.类上 作用:将方法返回值直接响应,如果返回值类型是 实体对象/集合 ,将会转换为json格式响应 说明:@ ...

  10. 探究-ping指令的使用

    简介: 背景:一直以来在项目上经常使用ping指令来测试网络通信,最近稍微研究了一下常用的指令,记录以作备忘.--MaQaQ 2023-11-1 ping (Packet Internet Grope ...