【geotools】实现插入,更新,查询

之前使用geoserverwfs-t协议进行geoserver的图层要素的增删改查,后来发现geoserver的的url形式局限挺大,现改用geotools

geotools和geoserver的url wfs-t比较

  1. geotools的优缺点

    • 一次完整的处理过程:

    geotools: 获取JDBCDataStore,获取FeatureWriter<SimpleFeatureType, SimpleFeature>对象,进行SimpleFeaturesetAttribute设置属性,执行write()进行写入,该操作完成后,需要调用it.geosolutions.geoserver.rest.GeoServerRESTPublisher内相关方法进行geoserver的图层发布

    • 当执行查询操作时,由于其类设计的问题,导致每一个要素Feature取值时,需要遍历两遍很麻烦;
    • 当执行插入操作时,倘若你看了源码会发现有个连接的配置batchInsertSize,如果你理解成和mybatisplus的size话,那就错了。这里的batchInsertSize是指,每次插入选用这个数量,当不足时,弃用。倘若不指定`batchInsertSize``时,默认时1,即生成的最终sql是,一条数据一个sql,效率较慢。

      举个例子: 当前插入数据为910条时,你设置的batchInsertSize为100,则只能插入900条;当你设置为10时,可以全部插入

    • 当执行更新操作时,需要获取的是getFeatureWriter(),参数务必传入filter,否则是插入。
    • 所有的执行操作最终生成的sql都有长度限制!
  2. wfs-t

    wfs-t : 直接创建xml,使用post发送xml,底层geoserver进行处理。使用http请求的缺点,请求的长度有限制,且当有多个插入

     - insert
     - update
     - search
     - 目前尚未发现geotools提供删除的接口操作
    

有空继续。。

个人正在整理项目中用到的geotools,抽空本人会封装起来。 https://gitee.com/qlanto/geotools-kit

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

qlanto

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

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

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

打赏作者

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

抵扣说明:

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

余额充值