|
@@ -4,10 +4,18 @@ import com.onemap.common.core.web.domain.RequestResult;
|
|
|
import com.supermap.analyst.spatialanalyst.OverlayAnalyst;
|
|
|
import com.supermap.analyst.spatialanalyst.OverlayAnalystParameter;
|
|
|
import com.supermap.data.*;
|
|
|
+import com.supermap.data.conversion.DataExport;
|
|
|
+import com.supermap.data.conversion.ExportSetting;
|
|
|
+import com.supermap.data.conversion.ExportSettingGeoJson;
|
|
|
+import com.supermap.data.conversion.FileType;
|
|
|
import org.springframework.web.bind.annotation.GetMapping;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
+import java.io.*;
|
|
|
+import java.nio.charset.StandardCharsets;
|
|
|
+import java.nio.file.Files;
|
|
|
+import java.nio.file.Paths;
|
|
|
import java.util.Date;
|
|
|
|
|
|
@RestController
|
|
@@ -31,8 +39,7 @@ public class TestData {
|
|
|
private static void createDatabaseSource() {
|
|
|
DatasourceConnectionInfo info = new DatasourceConnectionInfo();
|
|
|
info.setEngineType(EngineType.PGGIS);
|
|
|
-// info.setEngineType(EngineType.POSTGRESQL);
|
|
|
- info.setServer("192.168.100.252:5432");
|
|
|
+ info.setServer("192.168.100.202:5432");
|
|
|
info.setDatabase("test_data1");
|
|
|
info.setUser("postgres");
|
|
|
info.setPassword("postgres");
|
|
@@ -73,4 +80,57 @@ public class TestData {
|
|
|
// 释放工作空间占有的资源
|
|
|
mWorkspace.dispose();
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+ @GetMapping("/geojson")
|
|
|
+ public RequestResult getJson() {
|
|
|
+ DatasourceConnectionInfo info = new DatasourceConnectionInfo();
|
|
|
+ info.setEngineType(EngineType.PGGIS);
|
|
|
+ info.setServer("192.168.60.202:5432");
|
|
|
+ info.setDatabase("test_data1");
|
|
|
+ info.setUser("postgres");
|
|
|
+ info.setPassword("postgres");
|
|
|
+
|
|
|
+ Workspace mWorkspace = new Workspace();
|
|
|
+ Datasource datasource = mWorkspace.getDatasources().open(info);
|
|
|
+
|
|
|
+ if (datasource != null) {
|
|
|
+ System.out.println("创建数据源成功");
|
|
|
+ } else {
|
|
|
+ System.out.println("创建数据源失败");
|
|
|
+ return RequestResult.error("创建数据源失败");
|
|
|
+ }
|
|
|
+
|
|
|
+ Datasets datasets = datasource.getDatasets();
|
|
|
+ DatasetVector dtHebeiVertical = (DatasetVector) datasets.get("hebei_city");
|
|
|
+
|
|
|
+
|
|
|
+ ExportSettingGeoJson exportSettingGeoJson = new ExportSettingGeoJson();
|
|
|
+ exportSettingGeoJson.setOverwrite(true);
|
|
|
+
|
|
|
+// ExportSetting exportSetting = new ExportSetting();
|
|
|
+// exportSetting.setOverwrite(true);
|
|
|
+
|
|
|
+ // 获取当前工作目录,即项目根目录
|
|
|
+ String projectRootDir = System.getProperty("user.dir");
|
|
|
+ try {
|
|
|
+ File file = new File(projectRootDir, "data");
|
|
|
+ if (!file.exists()) {
|
|
|
+ file.mkdir();
|
|
|
+ }
|
|
|
+ // 构建目标文件路径
|
|
|
+ String targetFilePath = projectRootDir + File.separator + "data" + File.separator + "hebei_city.geojson";
|
|
|
+
|
|
|
+ exportSettingGeoJson.setTargetFileType(FileType.GEOJSON);
|
|
|
+ exportSettingGeoJson.setTargetFilePath(targetFilePath);
|
|
|
+ exportSettingGeoJson.setSourceData(dtHebeiVertical);
|
|
|
+
|
|
|
+ DataExport dataExport = new DataExport();
|
|
|
+ dataExport.getExportSettings().add(exportSettingGeoJson);
|
|
|
+ dataExport.run();
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ return RequestResult.success("数据创建成功", null);
|
|
|
+ }
|
|
|
}
|