geotools工具类中 DataStore(或者说SimpleFeature)如何写入SQLite数据库。
引入依赖
只需要geopkg这个依赖,里面包括了sqlite-jdbc。
<dependency>
<groupId>org.geotools</groupId>
<artifactId>gt-geopkg</artifactId>
<version>${gt.version}</version>
</dependency>
写入
先获取DataStore,因为SQLite是基于文件实现,一个文件一个数据库,单写多读。
private DataStore getSqliteDataStore(String reqId) throws IOException {
if (!Files.exists(Paths.get(cachePath))) {
Files.createDirectory(Paths.get(cachePath));
}
Map<String, String> params = new HashMap<>();
params.put("dbtype", "geopkg");
params.put("database", getCacheDb(reqId));
return DataStoreFinder.getDataStore(params);
}
private String getCacheDb(String reqId) {
return cachePath + File.separator + reqId + ".db";
}
写入实现, 我们传入参数是一个SimpleFeature的迭代器,采用分批写入方式。
public void write(String reqId, SimpleFeatureIterator iterator)

本文介绍如何使用GeoTools工具类中的DataStore将SimpleFeature数据写入SQLite数据库,并提供了基于JDBC读取SQLite数据库并返回分页数据的方法。
最低0.47元/天 解锁文章
573

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



