diff --git a/src/main/java/com/gis3c/App.java b/src/main/java/com/gis3c/App.java index ae2302b..6a5dae0 100644 --- a/src/main/java/com/gis3c/App.java +++ b/src/main/java/com/gis3c/App.java @@ -1,21 +1,15 @@ package com.gis3c; import com.gis3c.service.HelloService; -import org.geotools.data.FileDataStore; -import org.geotools.data.FileDataStoreFinder; -import org.geotools.data.simple.SimpleFeatureSource; -import org.geotools.map.FeatureLayer; -import org.geotools.map.Layer; -import org.geotools.map.MapContent; -import org.geotools.styling.SLD; -import org.geotools.styling.Style; -import org.geotools.swing.JMapFrame; -import org.geotools.swing.data.JFileDataStoreChooser; +import com.gis3c.service.PostGISService; +import org.apache.commons.collections.map.HashedMap; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; - -import java.io.File; import java.io.IOException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; public class App { public static ApplicationContext ContextInit(){ @@ -25,6 +19,26 @@ public class App { public static void main(String[] args) throws IOException { ApplicationContext context =ContextInit(); HelloService obj = (HelloService) context.getBean("helloService"); + PostGISService postGISService = (PostGISService) context.getBean("postGISService"); + + List> columns = new ArrayList<>(); + Map column = new HashMap<>(); + column.put("columnName","fid"); + column.put("typeCode",1); + columns.add(column); + + column = new HashMap<>(); + column.put("columnName","name"); + column.put("typeCode",3); + columns.add(column); + + column = new HashMap<>(); + column.put("columnName","geom"); + column.put("typeCode",91); + columns.add(column); + + postGISService.CommonCreateTable("test","geom",columns); + System.out.println(obj.SayHello()); } } \ No newline at end of file diff --git a/src/main/java/com/gis3c/dao/PostGISDao.java b/src/main/java/com/gis3c/dao/PostGISDao.java index 211f0d2..ca0074e 100644 --- a/src/main/java/com/gis3c/dao/PostGISDao.java +++ b/src/main/java/com/gis3c/dao/PostGISDao.java @@ -4,5 +4,5 @@ import java.util.Map; public interface PostGISDao { public void CommonCreateTable(Map tableStructure); - public void CreateSpatialIndex(Map params); + public void CreateSpatialIndex(String tableName); } diff --git a/src/main/java/com/gis3c/service/impl/HelloServiceImpl.java b/src/main/java/com/gis3c/service/impl/HelloServiceImpl.java index ffec527..36a90d4 100644 --- a/src/main/java/com/gis3c/service/impl/HelloServiceImpl.java +++ b/src/main/java/com/gis3c/service/impl/HelloServiceImpl.java @@ -1,7 +1,6 @@ package com.gis3c.service.impl; import com.gis3c.dao.HelloDao; -import com.gis3c.demo.Hello; import com.gis3c.service.HelloService; import org.springframework.stereotype.Service; diff --git a/src/main/java/com/gis3c/service/impl/PostGISServiceImpl.java b/src/main/java/com/gis3c/service/impl/PostGISServiceImpl.java index 12b646c..3c8ff26 100644 --- a/src/main/java/com/gis3c/service/impl/PostGISServiceImpl.java +++ b/src/main/java/com/gis3c/service/impl/PostGISServiceImpl.java @@ -14,6 +14,12 @@ public class PostGISServiceImpl implements PostGISService { public void CommonCreateTable( String tableName,String geometryColumn,List> columns){ + if(tableName == null || "".equals(tableName) + || geometryColumn == null || "".equals(geometryColumn) + || columns == null || columns.size() == 0){ + throw new IllegalArgumentException("参数错误"); + } + Map tableStructure = new HashMap<>(); tableStructure.put("tableName",tableName); tableStructure.put("columnList",columns); @@ -24,6 +30,6 @@ public class PostGISServiceImpl implements PostGISService { SpatialIndexParam.put("geometryColumn",geometryColumn); postGISDao.CommonCreateTable(tableStructure); - postGISDao.CreateSpatialIndex(SpatialIndexParam); + postGISDao.CreateSpatialIndex(tableName); } } diff --git a/src/main/java/com/gis3c/sqlmaps/PostGISMapper.xml b/src/main/java/com/gis3c/sqlmaps/PostGISMapper.xml index a5f6ada..dd342c7 100644 --- a/src/main/java/com/gis3c/sqlmaps/PostGISMapper.xml +++ b/src/main/java/com/gis3c/sqlmaps/PostGISMapper.xml @@ -19,22 +19,22 @@ ${item.columnName} character varying(254) - geo geometry(POINT,4326) + ${item.columnName} geometry(POINT,4326) - geo geometry(MULTIPOINT,4326) + ${item.columnName} geometry(MULTIPOINT,4326) - geo geometry(LINESTRING,4326) + ${item.columnName} geometry(LINESTRING,4326) - geo geometry(MULTILINESTRING,4326) + ${item.columnName} geometry(MULTILINESTRING,4326) - geo geometry(POLYGON,4326) + ${item.columnName} geometry(POLYGON,4326) - geo geometry(MULTIPOLYGON,4326) + ${item.columnName} geometry(MULTIPOLYGON,4326)