Geoserver数据库服务配置 - MySql


前言

这里文档使用主要为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):
    查看服务器状态

  • 跨域问题: geoserver\WEB-INF\web.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数据库配置的一个间的记录,如果对你有所帮助,希望不要吝啬你的一个赞

  • 7
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

熠熠仔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值