记一次上传.shp的文件解析并存入到pg中,数据库字段类型为geometry

记一次上传.shp的文件解析并存入到pg中,数据库字段类型为geometry

1.工具类

import lombok.Data;

@Data
public class Geometry {
   
    private Long id;
    private String geom;
    private String xzqdm;
}

import org.geotools.data.FileDataStoreFinder;
import org.geotools.data.shapefile.ShapefileDataStore;
import org.geotools.data.simple.SimpleFeatureCollection;
import org.geotools.data.simple.SimpleFeatureIterator;
import org.geotools.data.simple.SimpleFeatureSource;
import org.opengis.feature.Property;
import org.opengis.feature.simple.SimpleFeature;

import java.io.File;
import java.io.IOException;
import java.nio.charset.Charset;
import java.util.*;


public class ShpConvertor {
   
    public static <T> List<Geometry> read2Ts(String shpFilePath) throws Exception {
   
        List<Map<String, Object>> rows = read(shpFilePath);
        return toTs(rows);
    }

    public static List<Map<String, Object
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用Spring框架解析Shp文件并将其存入数据库的过程可以分为以下几个步骤: 1. 首先,我们需要引入Spring框架的相关依赖,包括spring-core、spring-jdbc、spring-context等。 2. 创建一个Shp文件解析器的Java类,可以使用Java自带的ZipInputStream类来解压缩zip文件。在解压缩过程,需要遍历zip文件的所有文件,并找到后缀为.shp文件。根据.shp文件的格式,可以使用Shapefile库来解析Shp文件,并获取其的要素信息。 3. 创建一个数据库连接的配置文件,如application.properties,配置数据库的连接信息,包括数据库URL、用户名、密码等。 4. 在Spring的配置文件,使用DataSource配置数据库连接池,使用JdbcTemplate来执行SQL语句。 5. 创建一个数据库表来存储Shp文件的要素信息,可以使用JdbcTemplate执行DDL语句来创建表结构。 6. 在Shp文件解析,将解析得到的要素信息使用JdbcTemplate执行插入SQL语句,将数据存入数据库。 7. 在Spring的配置文件,配置Shp文件解析器的Bean,并注入数据源和JdbcTemplate。 8. 创建一个Spring Boot的启动类,通过@SpringBootApplication注解将项目配置为Spring Boot项目,并在main方法运行Spring Boot应用。 9. 运行Spring Boot应用,会自动加载配置文件并初始化相关的Bean。当访问相应的接口时,Spring会调用Shp文件解析器将Shp文件的要素信息存入数据库。 以上就是使用Spring框架解析Shp文件并将其存入数据库的大致步骤。具体的实现过程,还需要考虑异常处理、事务管理等问题,以保证系统的稳定性和数据的完整性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值