postgis空间数据的转化

在postgis数据库中通常是以二进制wkb的方式进行存储的,但我们在实际使用的时候需要转换成geojson的格式,进行位置信息的描述,虽然在sql语句中有相关的函数,但sql语句毕竟不是太便利,所以想一种方式进行直接的装换.

从网上找了一下教程,找到一些使用mybaits进行空间数据的装换,https://www.jianshu.com/p/e27e28996ad1,但是我用的时候不起作用,可能在某些地方的设置不对.

所以后来就在类对象的set方法中进行修改,通过对set方法进行重新定义,将wkb装换成geometry,然后赋值给该属性

 

需要在maven中加入的模块

复制代码
        <dependency>
            <groupId>net.postgis</groupId>
            <artifactId>postgis-jdbc</artifactId>
            <version>2.5.0</version>
        </dependency>
        <dependency>
            <groupId>com.vividsolutions</groupId>
            <artifactId>jts</artifactId>
            <version>1.13</version>
        </dependency>
复制代码

重新定义的set方法

复制代码
    private String  geom;

    public void setGeom(String geom) throws Exception {
//        MyGeometryTypeHandler handler = new MyGeometryTypeHandler();
        byte[] bytes =  WKBReader.hexToBytes(geom);
        WKBReader wkbReader = new WKBReader();
        Geometry geometry =  wkbReader.read(bytes);
        this.geom = geometry.toString();
    }
复制代码

 参考文档:

https://blog.csdn.net/tanju_997/article/details/102524835

https://www.cnblogs.com/zuiyirenjian/p/3410141.html

posted on   一往无前!  阅读(650)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示