我是靠谱客的博主 稳重御姐,最近开发中收集的这篇文章主要介绍Geoserver数据库服务配置 - MySql前言一、应用软件版本信息二、图层服务三、样式配置总结,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Geoserver数据库服务配置 - MySql

  • 前言
  • 一、应用软件版本信息
    • Geoserver
    • MySql
  • 二、图层服务
    • 1. 数据库连接创建
    • 2. 图层数据选择发布
      • 2.1 直接发布数据库链接下的物理表或者视图内容
      • 2.2 由Geoserver创建视图内容获取数据
  • 三、样式配置
    • 1. 样式内容文件sld的创建
      • 1.1 创建普通样式内容
      • 1.2 根据数据字段进行分段渲染
  • 总结


前言

这里文档使用主要为geoserver与mysql数据库。

其他geoserver相关配置参考的文章可以参考 geoserver服务管理-图层与图层组发布、样式管理


一、应用软件版本信息

Geoserver

使用版本:2.17.5
JDK版本:1.8.0_114
Web应用服务器: Tomcat-8.5.6
具体使用可以依据服务器以及版本差异进行JDK与Web应用服务器的选择,不做强制限定

  • 注意这里使用geoserver会根据服务器自动分配内存,这里注意使用32位版本和64为版本服务器的差异,请保证至少分配内存512mb以上。内存影响切片生成的速度。
    具体查看可以参考(默认用户admin/geoserver):
    查看服务器状态

  • 跨域问题: geoserverWEB-INFweb.xml 中根据自己的服务器类型tomcat还是netty 去掉 cross-origin 注释即可

MySql

使用版本:5.7.26 / 8.0.21

  • 进行连接时,若原先MySql没有进行时区设置的重配置,需要自己进行时区的配置项设置。进行设置:set global time_zone = ‘+8:00’;,否则可能出现如下的错误报告内容:
    在这里插入图片描述

二、图层服务

1. 数据库连接创建

进入数据存储操作界面
在这里插入图片描述

选择对应的数据库源(这里选择Mysql),依据配置内容进行数据存储的新增
在这里插入图片描述
在这里插入图片描述

2. 图层数据选择发布

此步骤主要为构建geoserver接收的geometry类型数据,常见使用的数据库函数有以下两个类别:

geometry ST_GeomFromGeoJSON(text  geomjson)
geometry ST_GeomFromText(text  WKT)

geometry为函数范围数据类型,text为函数接收参数数据类型。Geojson与WKT数据规范可以自行查找相关资料,了解格式规范。
进入新建图层操作窗口的界面
在这里插入图片描述

注意:
mysql5版本不会检查经纬度范围,经度在前、纬度在后,mysql8版本会检查经纬度范围,使用时可以设置数据图层geometry的srid为0,进行自适应配置。

在发布面类型数据最好用geometry ST_GeomFromText(text WKT, srid),指定srid进行数据发布,mysql8版本用0来自适应数据检查

2.1 直接发布数据库链接下的物理表或者视图内容

选择已建立的数据源,选择对应表或者视图进行发布
在这里插入图片描述

确认配置内容,点击确认进行服务的发布
在这里插入图片描述

2.2 由Geoserver创建视图内容获取数据

创建视图配置的图层
在这里插入图片描述

编写相应的数据获取语句
在这里插入图片描述

点击确认,进入如2.1步骤内容,详细可参考说明。点击确认完成服务的发布。

三、样式配置

1. 样式内容文件sld的创建

进入样式管理操作界面创建自定义样式
在这里插入图片描述

在图层操作操作窗口选择需要编辑的图层服务,在发布选项卡选择已创建好的样式,点击保存,进行图层服务的样式修改。
在这里插入图片描述

1.1 创建普通样式内容

面样式(一个图层只能对应设置一个样式),点击提交创建完成
在这里插入图片描述

其余点、线的样式设置与此类似,可自行操作。

1.2 根据数据字段进行分段渲染

通过设置属性字段的过滤条件,设置不同的样式类型。
在这里插入图片描述

此sld样例仅作参考,此处根据traffic字段不同的值,设置颜色为绿色、橙色、红色。

<?xml version="1.0" encoding="ISO-8859-1"?>
<StyledLayerDescriptor version="1.0.0"
  xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.0.0/StyledLayerDescriptor.xsd"
  xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc"
  xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <NamedLayer>
    <Name>traffic</Name>
    <UserStyle>
      <Title>A dark orange line style</Title>
      <FeatureTypeStyle>
        <Rule>
          <Name>ydzs</Name>
          <Title>green line</Title>
          <ogc:Filter>
          	<ogc:PropertyIsEqualTo>
              <ogc:PropertyName>traffic</ogc:PropertyName>
              <ogc:Literal>1</ogc:Literal>
           </ogc:PropertyIsEqualTo>
          </ogc:Filter>
          <PolygonSymbolizer>
            <Fill>
              <CssParameter name="fill">#00FF00
              </CssParameter>
            </Fill>
            <Stroke>
              <CssParameter name="stroke">#00FF00</CssParameter>
              <CssParameter name="stroke-width">0.5</CssParameter>
            </Stroke>
          </PolygonSymbolizer>
        </Rule>
		<Rule>
          <Name>ydzs</Name>
          <Title>orange line</Title>
          <ogc:Filter>
          	<ogc:PropertyIsEqualTo>
              <ogc:PropertyName>traffic</ogc:PropertyName>
              <ogc:Literal>2</ogc:Literal>
           </ogc:PropertyIsEqualTo>
          </ogc:Filter>
		  <PolygonSymbolizer>
            <Fill>
              <CssParameter name="fill">#FFFF00
              </CssParameter>
            </Fill>
            <Stroke>
              <CssParameter name="stroke">#FFFF00</CssParameter>
              <CssParameter name="stroke-width">0.5</CssParameter>
            </Stroke>
          </PolygonSymbolizer>
        </Rule>
		<Rule>
          <Name>ydzs</Name>
          <Title>red line</Title>
          <ogc:Filter>
          	<ogc:PropertyIsEqualTo>
              <ogc:PropertyName>traffic</ogc:PropertyName>
              <ogc:Literal>3</ogc:Literal>
           </ogc:PropertyIsEqualTo>
          </ogc:Filter>
		  <PolygonSymbolizer>
            <Fill>
              <CssParameter name="fill">#FF0000
              </CssParameter>
            </Fill>
            <Stroke>
              <CssParameter name="stroke">#FF0000</CssParameter>
              <CssParameter name="stroke-width">0.5</CssParameter>
            </Stroke>
          </PolygonSymbolizer>
        </Rule>

      </FeatureTypeStyle>
    </UserStyle>
  </NamedLayer>
</StyledLayerDescriptor>


总结

以上为此次对geoserver数据库配置的一个间的记录,如果对你有所帮助,希望不要吝啬你的一个赞

最后

以上就是稳重御姐为你收集整理的Geoserver数据库服务配置 - MySql前言一、应用软件版本信息二、图层服务三、样式配置总结的全部内容,希望文章能够帮你解决Geoserver数据库服务配置 - MySql前言一、应用软件版本信息二、图层服务三、样式配置总结所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部