1.前言
2020年之前,我从未接触过Gis的开发技术。和大家一样,就是调用百度和谷歌开放的API来实现场所的展示功能。对GIS的理解只停留在效果上,永远不知道它是如何实现的。 2020年有幸参加国家铁路设计院。针对国家铁路和地理空间矢量化、路径搜索、铁路大数据分析等项目需求,深入研究了Gis。通过学习和指导实践,最终完成了系统的设计和实现。开发。基于对这个项目的理解,我将自己学到的知识总结一下,分享给大家。
2.概念
Ø GIS:全称Geographic Information System,中文:地理信息系统
Ø OGC标准:Open Geographic Federation是一个参与共识的过程 一个由384家公司组成的行业联盟,开发开放地理处理规范的政府机构、大学和个人。 OpenGIS 规范定义的开放接口和协议为 Web、无线和位置服务以及主流 IT 提供了可互操作的解决方案。为各种应用程序中的授权技术开发人员提供复杂的空间信息和服务。 Open Geographic Federation 协议包括Web Ground Service WMS 和Web Function Service WFS。 GIS根据OGC产品分为两类,基于完整和准确的软件,遵循OGC规范。 GIS 技术标准促进了 GIS 工具的交流。兼容产品是符合OpenGIS规范的软件产品。当产品通过 OGC 测试程序测试并证明符合要求时,该产品将自动在此站点上注册为“符合要求”。实际的软件产品,即实现OpenGIS规范但未通过兼容性测试的软件产品。合规性测试并非适用于所有规格。开发者可以将他们的产品注册为实施草案或批准的规范,OGC 有权审查和确认每个条目。
Ø WMS地图服务(OpenGIS Web Map Service),将地图数据发布为WEB服务,提供网络地图,具有三个基本操作:
l GetCapabitities返回服务级别元数据,是对服务信息内容和所需参数的描述;
l GetMap返回一张地图,其地理空间参考和尺寸参数有明确定义;
l GetFeatureInfo(可选)返回地面上显示的一些特殊要素的信息
Ø WMTS:获取被切割成瓦片的数据
Ø WFS要素服务(Web Feature Service)是提供如下操作矢量位置的查询和编译。
l GetCapabilites返回Web要素服务性能描述文档(以XML描述);
l DescribeFeatureType返回一个XML文档,描述任何可以提供服务的要素的结构;
l GetFeature为获取要素实例的请求提供服务;
l Transaction为事务请求提供服务;
l LockFeature在事务锁定请求期间处理一个或多个要素类型实例。
Ø WCS地理覆盖服务(Web Coverage Service),目标是发布原始栅格数据。 (栅格数据是一种将空间划分为规则网格的数据形式,每个网格称为一个单元,并为每个单元赋予相应的属性值来表示实体)
l GetCapabilities操作返回XML文档描述服务和数据集。
l n GetCoverage操作是在GetCapabilities判断可以执行什么样的查询,可以获取什么样的数据之后进行的。它使用通用的覆盖格式来返回地理位置的值或属性。
l DescribeCoverageType 操作允许客户端请求特定 WCS 服务器提供的任何覆盖范围的完整描述。
Ø GML:地理标记语言。用于描述地理数据的 XML。
三、搭建地理服务器(geoserver)
个人愚见:geoserver是一个开源的地理服务引擎,可以发布和管理地理空间数据(即图层数据),同时提供丰富的为用户提供地理空间数据增删改查的API服务。
Geoserver内置Openlayers库(用于开发WebGIS客户端的JaScript包,最初基于BSD许可发布,OpenLayers是一个开源项目,其设计意图是为互联网客户端提供强大的显示功能,包括数据展示及相关操作,并具有灵活的扩展机制)。如果前端项目集成了OpenLayers库,可以通过API调用获取Geoserver发布的地理空间数据。
官方定义:GeoServer是一个用Java编写的开源软件服务器,允许用户共享和编辑地理空间数据。它专为互操作性而设计,使用开放标准发布来自任何主要空间数据源的数据。
GeoServer 允许您向世界展示您的空间信息。实施 Web 几何服务 (WMS) 标准,GeoServer 可以创建各种输出格式的几何图形。免费的地理定位库 OpenLayers 已集成到 GeoServer 中,使地理定位变得快速而简单。 GeoServer 建立在 GeoTools 之上,这是一个开源的 Ja GIS 工具包。
GeoServer 不仅仅是精美的地图。 GeoServer 符合 Web 要素服务 (WFS) 标准和 Web 覆盖服务 (WCS) 标准,允许共享和编辑用于生成地理的数据。 GeoServer 还使用 Web Map Tile Service 标准将已发布的地理信息拆分为图块,以便于 Web 地理信息和移动应用程序使用。
GeoServer 是一个模块化应用程序,可通过扩展添加额外的功能。 Web Processing Service 扩展扩展了丰富的处理选项,您甚至可以编写自己的处理选项,以便其他人可以将您的数据集成到他们的网站和应用程序中,从而释放您的数据并增加透明度。
(一)获取安装包
方法一:从官网下载geoserver安装包:http://geoserver.org/release/stable/
方法二:下载源码编译
ja源码地址:https://github.com/geoserver/geoserver.git,编译geoserver.war安装包。
没有学过编程的同学也可以在这里下载官方安装包。
(二)、linux服务器部署
要求:linux安装jdk1.8以上版本,安装tomcat8.0以上版本,将tomcat包名改为GisServer。
做好的geoserver.war包放到tomcat/webapps下
在geoserver/bin目录下,执行./startup.sh启动服务。
在防火墙中加入8080端口,并在安全组中允许8080端口入口规则。
然后浏览器访问:http://ip:8080/geoserver/web/,进入geoserver欢迎页面
使用默认账号和密码登录(admin,admin)
(3)官方图层预览
本章简单介绍了GIS服务相关的概念和搭建geoserver的全过程。有兴趣的朋友可以试试看,有什么问题可以私信交流。
什么是地图服务(如何做客户地图)的介绍到此结束。
文章来源于网络或者作者投稿,若有侵权请联系删除,作者:fine,如若转载,请注明出处:https://www.laoz.net/3344.html