geoserver动态颜色参数样式、动态sql配置实现

动态颜色参数样式、动态sql

访问方式:

http://localhost:20011/geoserver/gzzjygis/wms?service=WMS&version=1.1.0&request=GetMap&layers=layername&bbox=103.804856%2C24.869804%2C109.336088%2C29.12673&width=768&height=591&srs=EPSG%3A4326&format=application/openlayers&viewparams=paramcolor:00ff00;type:A

 

 

样式设置:

<?xml version="1.0" encoding="UTF-8"?>
<StyledLayerDescriptor version="1.0.0" 
 xsi:schemaLocation="http://www.opengis.net/sld 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">
  <!-- a Named Layer is the basic building block of an SLD document -->
  <NamedLayer>
    <Name>default_point</Name>
    <UserStyle>
    <!-- Styles can have names, titles and abstracts -->
      <Title>Default Point</Title>
      <Abstract>A sample style that draws a point</Abstract>
      <!-- FeatureTypeStyles describe how to render different features -->
      <!-- A FeatureTypeStyle for rendering points -->
      <FeatureTypeStyle>
        <Rule>
          <Name>rule1</Name>
          <Title>Red Square</Title>
          <Abstract>A 6 pixel square with a red fill and no stroke</Abstract>
            <PointSymbolizer>
              <Graphic>
                <Mark>
                  <WellKnownName>circle</WellKnownName>
                  <Fill>
                    <CssParameter name="fill">
                      <ogc:PropertyName>paramcolor</ogc:PropertyName>
                    </CssParameter>
                  </Fill>
                </Mark>
              <Size>6</Size>
            </Graphic>
          </PointSymbolizer>
        </Rule>
      </FeatureTypeStyle>
    </UserStyle>
  </NamedLayer>
</StyledLayerDescriptor>

视图sql设置:

select  dataid, dataname,d.the_geom,’#%paramcolor%’ as paramcolor from d

where apt_code =’%type%’

提取 paramcolor和type为动态参数

 

转载自:https://blog.csdn.net/whq12789/article/details/86699967

You may also like...