gpt4 book ai didi

java - 在java中存储PostgreSQL/PostGIS "geometry(MultiPolygon)"数据类型

转载 作者:太空宇宙 更新时间:2023-11-04 07:53:18 46 4
gpt4 key购买 nike

我需要将PostgreSQL的几何(MultiPolygon)类型变量存储到java变量中这是因为我尝试将几何列添加到非空间表以使用 map 服务器查询 map

我试图将它存储在一个字符串中,这导致了错误。

请建议我使用 Java 中的数据类型,以便我可以将值存储在空间数据库的几何列中。

这是我的代码片段:

    String query="select geom from apmandal where mandalname='"+mname+"'";
ResultSet rs=st.executeQuery(query);
rs.next();
Geometry geomval=rs.getXXX();

请建议一个 getXXX() 方法,以便我可以检索几何列值

提前致谢

从评论中编辑:

String query = "select geom from apmandal order by area desc;"; 
ResultSet rs = st0.executeQuery(query);
rs.next();
String geomval = rs.getString(1).toString();
String newquery = "insert into test(mname, geom) values('ZAHEERABAD','"+geomval+"');";
int tel = st1.executeUpdate(newquery);
System.out.println("inserted "+tel+" record");

最佳答案

您可以简单地转换为文本表示形式:

String query="select geom<b>::text</b> from apmandal where mandalname='"+mname+"'";

然后您可以像对待任何其他文本一样对待它。
我引用PostGIS manual here :

At least as of PostgreSQL 8.3 - Everything can be CAST to text (presumably because of the magical unknown type), so no defined CASTS for that need to be present for you to CAST an object to text.

关于java - 在java中存储PostgreSQL/PostGIS "geometry(MultiPolygon)"数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14042767/

46 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com