GeoServer 基础篇(一)_geoserver官网-程序员宅基地

技术标签: gis  geoserver  java  

GeoServer

GeoServer 是 OpenGIS Web 服务器规范的 J2EE 实现,利用 GeoServer 可以方便的发布地图数据,允许用户对特征数据进行更新、删除、插入操作,通过 GeoServer 可以比较容易的在用户之间迅速共享空间地理信息。GeoServer是社区开源项目,可以直接通过社区网站下载,它允许用户查看和编辑地理空间数据,使用开放地理空间联盟(OGC)提出的开放标准,为地图创建和数据分享提供了强大的便利性。

官网:http://geoserver.org

下载地址:http://geoserver.org/download/

简而言之,就是一个开源地图服务器

GeoServer 主要特性

兼容 WMS 和 WFS 特性;支持 PostGIS 、 Shapefile 、 ArcSDE 、 Oracle 、 VPF 、 MySQL 、 MapInfo ;支持上百种投影;能够将网络地图输出为 jpeg 、 gif 、 png 、 SVG 、 KML 等格式;能够运行在任何基于 J2EE/Servlet 容器之上;嵌入 MapBuilder 支持 AJAX 的地图客户端OpenLayers;除此之外还包括许多其他的特性,新版本同时支持主流产品如mapbox和mongodb等。

本地部署

1.下载geoserver的war包根据自己需求的版本,一般下载最新前一个稳定版本比较好,下载地址如上所诉。
在这里插入图片描述
我们如果就是项目应用直接下载war包即可,部署本地的环境电脑需要有java环境,需要安装JDK,这个就不在这里细说了,百度自行解决。

2.本地准备一个容器,如tomcat,将下载好的war包放在tomcat的webapp文件夹下,启动tomcat即可!

tomcat下载地址:https://tomcat.apache.org/download-80.cgi

3.访问geoserver主页面

一般tomcat的默认端口是8080,则我们访问 http://localhost:8080/geoserver/web/ 即可
则会出现欢迎页面
在这里插入图片描述
到这里本地部署geoserver即算完成!默认用户名是admin 密码是geoserver

web页面功能介绍(重点)

1.首先登录进入web功能页面

在这里插入图片描述

2.登录后功能页面全览

在这里插入图片描述

3.关于和状态模块

该模块主要有服务器状态和日志以及geoserver相关的一些系统信息介绍

服务器状态主要可以查看数据的存放目录和连接数以及内存使用情况等相关的资源环境配置信息在这里插入图片描述
geoserver的日志则是控制台输出打印的日志,如下图
在这里插入图片描述
联系方式和关于geoserver等我们就不细说了,懂得都懂,就是软件自我介绍

4.数据模块

该模块为geoserver核心模块,作为项目应用使用最高的部分

4.1 Layer Preview

这块主要用于查看自己发布的地图服务信息,这块的地图浏览主要基于openlayers引擎实现
在这里插入图片描述
这是一个表格展现方式的布局,第一列Type表示数据的类型,如点线面栅格等等,第二列Title表示图层标题,展示图层的标题名称,第三列Name是图层的名称可以看到他的组成是有规律的,是工作空间名称加上图层名称组成(工作空间是什么呢,我们下面会讲到),这个图层名称一般来说是唯一的,第四列Common Formats是一些通用的格式,如openlayers和GML和KML 都是常用的地图数据输出格式,第五列 All Formats 则表示所有的输出格式,这是一个下拉选项,里面有很多格式(如下图),根据自己的业务需求选择对应的格式即可查看数据。
这里常用的有 wms中的 openlayers png, wfs中的geojson等

在这里插入图片描述
点击openlayers 则可以看到在openlayers中加载数据的样子
在这里插入图片描述

4.2 工作区(workspace)

在这里插入图片描述
这块主要是用于管理工作区的,基本的增删改查,这个工作区是干什么的呢?

工作区是一组数据存储区。与命名空间类似,它用于对以某种方式相关的数据进行分组。
通俗点就是创建一个地盘,把你想要归类的图层数据地图数据放到一起方便自己管理。

4.3 数据存储(Stores)

在这里插入图片描述
geoserver是一个地图服务发布器,主要用于发布服务的,大家都知道我们gis行业地理数据是行业的基石,从下往上是:数据–服务–应用。

数据存储功能模块就是用于根据自己的地图数据去关联到我们的geoserver地图服务器,用于读取数据发布地图服务。geoserver作为开源的地图服务器在国内最受用户喜爱的产品,社区更新非常快,与时俱进支持大多数数据格式如shp tif 各种数据库如postgresql+postgis等等我们常用的数据格式。

点击添加数据源则可以根据自己的数据格式选择对应的添加方式,填入对应参数:
在这里插入图片描述
这里主要分为三大块,矢量数据和栅格数据以及第三方其他数据源。
矢量数据我们常用的Shapefile则shp文件,PostgGIS则是postgresql+postgis的数据库连接
栅格数据则是GerTIFF使用的比较多,则我们常见的tif后缀的数据
其他数据源这里我们先不讲,等后期进阶内容讲解

4.4 图层(Layers)

图层作为地图服务最核心的模块,是数据转换成地图服务最重要的部分,一个地图服务可以理解为由一个图层和一个样式组成,有数据源获取到对应的图层再加上对应的样式渲染从而获得一个地图服务。
在这里插入图片描述
我们添加一个图层的时候需要选择一个对应的数据存储,则获取到我们的数据源
在这里插入图片描述
然后就可以获取到当前数据源下面的数据,选择想要发布的数据发布对应的服务。
在这里插入图片描述

4.5 图层组(Layer Groups)

在这里插入图片描述
图层组的作用很明显,我们在地图应用的过程中往往一个地图服务是满足不了我们的需求的,可能一个符合使用的地图由多个图层叠加组合形成,比如我们基础的地图需要由道路路网图层和建筑物图层等等。图层组则可以将多个图层组合到一起形成一个服务,让调用者更加方便轻松,调用一个服务地址即可获取到图层组中所有的图层数据,并可以自己选择叠加顺序。

在这里插入图片描述

4.6 Styles(样式)

GeoServer样式支持SLD、CSS、YSLD、MBStyle四种方式定义Style,默认支持的SLD方式,其它三种需要扩展,SLD通过xml标签定义style,虽然强大但也比较复杂,可读性差,代码量大,style主要是渲染图层根据样式是图层具有多样性。

在这里插入图片描述

这里附上一个geoserver style相关的讲解
https://blog.csdn.net/xtfge0915/article/details/85175094

发布一个地图服务

1、启动Geoserver服务,来到geoserver地图服务器主页:
http://localhost:8080/geoserver/web, 登录

2、工作区->添加新的工作区
Name:gishub,
工作区URI:www.gishub.com

3、数据存储->添加新的数据存储,选择矢量数据源下的 Shapefile - ESRI Shapefiles (*.shp)
在这里插入图片描述
在接下来的页面,选择工作区gishub、输入数据源名称cesi、选择文件夹路径、编码等,如下设置。
在这里插入图片描述

4、图层->新建图层,选择刚刚创建的数据存储名:cesi。然后会看到一个列表,列表中的一个图层名称对应刚刚我们复制过去的一个.shp文件。

在这里插入图片描述

点击发布按钮,先选择从数据中计算获取范围,再点下面的compute from native bounds

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点击Layer Preview 找到刚才发布的图层名称点击openlayers 则可以看到效果

在这里插入图片描述
在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_37731856/article/details/116525035

智能推荐

Linux分区及LVM_linux中lvm的分区类型是什么-程序员宅基地

文章浏览阅读2.5w次,点赞9次,收藏51次。操作环境:vmware虚机一、整体流程在使用fdisk/parted等分区工具对硬盘分区之后,是否使用LVM由用户决定 : 1)可以直接对分区后的硬盘进行格式化操作,之后挂载分区; 2)也可以先用LVM逻辑卷管理工具对分区后的物理卷进行管理,之后再对逻辑卷进行格式化操作,之后挂载分区。( LVM的分区类型为8e) 使用LVM的好处是方_linux中lvm的分区类型是什么

CVE监控工具_使用钉钉做cve实时监测机器人-程序员宅基地

文章浏览阅读821次。一:介绍监控Github上的漏洞、红队等信息发送钉钉、邮箱、Telegram BOT、server酱,Telegram BOT时需要安装telegram bot需要的库:pip3 install python-telegram-bot二:服务部署步骤一:在海外云主机上运行一下命令拉取项目文件git clone https://github.com/JustYoomoon/CVEAP.git步骤二:进入项目文件进行配置(钉钉)##########修改处1########钉钉def dingd_使用钉钉做cve实时监测机器人

使用appfox工具测试登录有图片验证码接口的问题_使用apifox怎么解决接口登录时动态验证码-程序员宅基地

文章浏览阅读4k次。接口测试登录遇到验证码问题,本文章使用appfox引用外部文件来处理带有图片验证码问题_使用apifox怎么解决接口登录时动态验证码

Java开发环境搭建与实验教程(适合自学)【2019.10.05修订】_"%java_home%\\bin\\java\" -dfile.encoding=gb18030 -程序员宅基地

文章浏览阅读2.5w次,点赞25次,收藏149次。Java开发环境搭建与实验教程如何配置JAVA的环境变量下载Java JDK(JDK包含JRE。SDK是Software Development Kit 即软件开发工具包,可以包括函数库、编译程序等。JRE是Java RuntimeEnviroment是指Java的运行环境,是面向Java程序的使用者,而不是开发者。)可到网上搜索下载。官方下载地址:http://www...._"%java_home%\\bin\\java\" -dfile.encoding=gb18030 -cp \"%myclasspath%\" %myserver"

【springboot】springboot+dubbo+Zookeeper_springboot+dubbo+zookeeper特点-程序员宅基地

文章浏览阅读153次。一、dubbo、zookeeperzookeeper注册中心,其可看成是zookeeper=文件系统+监听通知机制。主要用于分布式应用配置管理、统一命名服务、状态同步服务、集群管理等。zookeeper用来注册服务和进行负载均衡,通过心跳机制可以检测挂掉的机器并将挂掉机器的ip和服务对应关系从列表中删除。zookeeper是一个分布式协调服务:a:zookeeper是为别的分布式程序服务的b:zookeeper本身就是一个分布式程序(只要半数以上节点存活,zookeeper就能正常服务。)c:_springboot+dubbo+zookeeper特点

you_get多进程批量下载b站视频_you-get批量下载-程序员宅基地

文章浏览阅读4.5k次,点赞7次,收藏31次。作为一枚码农,下载b站的时候以前虽然知道用you-get,但是还是想批量进行下载you-get虽然可以在命令行直接下载,但是这样很费事,还是想写在一个python文件这样方便我注意到you-get是可以开多个窗口同时下载的,这样可以提高下载速度的,不信可以试一下。但是这样得开很多个窗口,这样也是很麻烦的一件事。然后就想到了,干脆直接在python文件里做成多进程算了。直接看代码..._you-get批量下载

随便推点

MFC窗口程序启动时最小化到托盘、不在任务栏中显示、显示时在右小角_c 语言 软件显示在右侧的最小-程序员宅基地

文章浏览阅读829次。第一步:窗口最小化到托盘,显示图标。这一步在网上一搜,真的很多文章,基本上都可以用吧。有的是在OnSize中最化时画图标,隐藏窗口;有的是在初始化时画图标,在OnSysCommand中判断最大化和最小化时进行窗口显示隐藏。我选择了后者。一开始在后面的步骤遇到了麻烦,最后第二种方法完成了。谅没再去试第一种方法。在OnSysCommand中显示隐藏,效果挺好的。 我的开发环境是V..._c 语言 软件显示在右侧的最小

Weka安装及简单应用-程序员宅基地

文章浏览阅读3.3w次,点赞68次,收藏340次。因为前段时间上课有接触WEKA这个软件 ,写了一个实验报告,特此把它贴出来,希望能对大家有所帮助~一、Weka介绍1、Weka简介Weka是怀卡托智能分析环境(Waikato Environment for Knowledge Analysis)的英文字首缩写,在该网站可以免费下载可运行软件和源代码,还可以获得说明文档、常见问题解答、数据集和其他文献等资源。Weka是新西兰怀卡托大学用..._weka安装

虚拟机ubantu系统崩溃s001.vmdk”所在的文件系统已满_ubuntu 64 位-s001.vmdk-程序员宅基地

文章浏览阅读4.6k次。问题s001.vmdk”所在的文件系统已满。 选择“重试(R)”可重试该操作。 选择“取消”将结在下载docker镜像时候,提示虚拟硬盘空间不足,点击取消,就会退出系统,如果再打开系统,还是会一直出现这个提示解决办法打开你存放虚拟机系统文件的文件夹。然后以下面关键字搜索这个文件夹:*.lck。删除所有找到的就可以了。..._ubuntu 64 位-s001.vmdk

BUAA(2021春)网络打印机延迟率计算(士谔18级期末改编)——伪树状数组+树的直径(之后再上传题解)_某单位信息网络结构呈树形网络 北航-程序员宅基地

文章浏览阅读786次,点赞4次,收藏2次。BUAA数据结构期末模拟题——网络打印机延迟率计算看前须知考试回顾题目内容问题描述输入形式输出形式样例样例说明看前须知要点介绍和简要声明.考试回顾格式控制输入输出——期中考试模拟题(简单的分类讨论).标识符的识别(期中考试题)——题目说的不清不楚但其实不难.空闲空间申请模拟(期中考试题)——注意读题,难度其实一般.网络打印机选择(北京学院数据结构18级期末压轴题)——伪树状数组(这题杀我)(ಥ_ಥ).查家谱(士谔书院16级期末)——找最近公共祖先.图的直径(士谔书院15级期末)——求有向图_某单位信息网络结构呈树形网络 北航

用AjaxPro实现无刷新翻页效果及数据库分页技术介绍_ajaxpro 全部数据分页-程序员宅基地

文章浏览阅读1w次。在看本文之前,建议查看本人的系列文章:《AjaxPro与服务器端交互过程中如何传值》:http://blog.csdn.net/zhoufoxcn/archive/2008/01/05/2026908.aspx 《用AjaxPro实现二级联动》:http://blog.csdn.net/zhoufoxcn/archive/2008/01/07/2029204.aspx 《用AjaxPro实现定时刷_ajaxpro 全部数据分页