以下是使用 GeoTools 将 Shapefile 数据导入 PostGIS 的示例代码:
1. 添加依赖
确保你的项目中包含 GeoTools 和 PostGIS 相关的依赖。如果使用 Maven,可以在 pom.xml 中添加以下依赖:
<dependency>
<groupId>org.geotools</groupId>
<artifactId>gt-shapefile</artifactId>
<version>24.0</version>
</dependency>
<dependency>
<groupId>org.geotools</groupId>
<artifactId>gt-jdbc-postgis</artifactId>
<version>24.0</version>
</dependency>
<dependency>
<groupId>org.geotools</groupId>
<artifactId>gt-main</artifactId>
<version>24.0</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.2.23</version>
</dependency>
2. 代码说明
-
打开 Shapefile 文件:
- 使用
ShapefileDataStore打开 Shapefile 文件,并获取其FeatureSource。
- 使用
-
打开 Shapefile的投影文件:
- 指定投影。
-
配置 PostGIS 连接参数:
- 设置 PostGIS 数据库的连接参数,包括用户名、密码、主机、端口、数据库名称等。
-
创建目标表:
- 使用
postgisDataStore.createSchema方法在 PostGIS 中创建与 Shapefile 结构相同的表。
- 使用
-
批量插入数据:
- 使用
FeatureWriter和Transaction.AUTO_COMMIT批量插入数据。
- 使用

最低0.47元/天 解锁文章
3355

被折叠的 条评论
为什么被折叠?



