From b6999256f3e05b447b2313a81d51f06087c9f5d9 Mon Sep 17 00:00:00 2001 From: "hukekuan@163.com" Date: Wed, 25 Apr 2018 17:52:21 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B2=B3=E6=B5=81=E7=A9=BA?= =?UTF-8?q?=E9=97=B4=E6=95=B0=E6=8D=AE=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/gis3c/spatial/dao/RiverDao.java | 5 +++ .../com/gis3c/spatial/entity/ModelRiver.java | 34 +++++++++++++++++++ .../gis3c/spatial/service/RiverService.java | 16 +++++++++ .../service/impl/RiverServiceImpl.java | 19 +++++++++++ src/test/java/com/gis3c/spatial/App.java | 13 +++++-- .../resources/mappings/spatial/RiverDao.xml | 19 +++++++++++ 6 files changed, 104 insertions(+), 2 deletions(-) create mode 100644 src/main/java/com/gis3c/spatial/entity/ModelRiver.java diff --git a/src/main/java/com/gis3c/spatial/dao/RiverDao.java b/src/main/java/com/gis3c/spatial/dao/RiverDao.java index 28ddf3d..8162bb6 100644 --- a/src/main/java/com/gis3c/spatial/dao/RiverDao.java +++ b/src/main/java/com/gis3c/spatial/dao/RiverDao.java @@ -1,10 +1,12 @@ package com.gis3c.spatial.dao; import com.gis3c.common.persistence.annotation.C3SpatialDao; +import com.gis3c.spatial.entity.ModelRiver; import com.gis3c.spatial.entity.SeparatedRiver; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; import java.util.Set; /** @@ -14,4 +16,7 @@ import java.util.Set; public interface RiverDao { public List findRiversByStationCodes(@Param("stationCodes") Set stationCodes); public List findRiversByRiverCodes(@Param("riverCodes") Set riverCodes); + + public List findModelRiverInfo(); + public List findModelRiverByName(@Param("riverName") String riverName); } diff --git a/src/main/java/com/gis3c/spatial/entity/ModelRiver.java b/src/main/java/com/gis3c/spatial/entity/ModelRiver.java new file mode 100644 index 0000000..bbc032b --- /dev/null +++ b/src/main/java/com/gis3c/spatial/entity/ModelRiver.java @@ -0,0 +1,34 @@ +package com.gis3c.spatial.entity; + +/** + * Created by hukekuan on 2018/4/25. + */ +public class ModelRiver extends BaseFeature{ + private String riverName; + private String aliasName; + private Integer orderNum; + + public String getRiverName() { + return riverName; + } + + public void setRiverName(String riverName) { + this.riverName = riverName; + } + + public String getAliasName() { + return aliasName; + } + + public void setAliasName(String aliasName) { + this.aliasName = aliasName; + } + + public Integer getOrderNum() { + return orderNum; + } + + public void setOrderNum(Integer orderNum) { + this.orderNum = orderNum; + } +} diff --git a/src/main/java/com/gis3c/spatial/service/RiverService.java b/src/main/java/com/gis3c/spatial/service/RiverService.java index 9cc8edd..df8762e 100644 --- a/src/main/java/com/gis3c/spatial/service/RiverService.java +++ b/src/main/java/com/gis3c/spatial/service/RiverService.java @@ -1,5 +1,8 @@ package com.gis3c.spatial.service; +import com.gis3c.spatial.entity.ModelRiver; + +import java.util.List; import java.util.Map; import java.util.Set; @@ -22,4 +25,17 @@ public interface RiverService { * @return */ public String findRiversByRiverCodes(Set riverCodes,Map sufaceStations); + + /** + * 获取500米分段河流河流名称和别名 + * @return + */ + public List findModelRiverInfo(); + + /** + * 根据河流名称获取500米分段河流GeoJSON数据 + * @param riverName + * @return + */ + public String findModelRiverByName(String riverName); } diff --git a/src/main/java/com/gis3c/spatial/service/impl/RiverServiceImpl.java b/src/main/java/com/gis3c/spatial/service/impl/RiverServiceImpl.java index 50e34e8..02b22bb 100644 --- a/src/main/java/com/gis3c/spatial/service/impl/RiverServiceImpl.java +++ b/src/main/java/com/gis3c/spatial/service/impl/RiverServiceImpl.java @@ -3,6 +3,7 @@ package com.gis3c.spatial.service.impl; import com.gis3c.common.exception.BusinessException; import com.gis3c.spatial.common.FeatureUtilities; import com.gis3c.spatial.dao.RiverDao; +import com.gis3c.spatial.entity.ModelRiver; import com.gis3c.spatial.entity.SeparatedRiver; import com.gis3c.spatial.service.RiverService; import org.springframework.beans.factory.annotation.Autowired; @@ -65,4 +66,22 @@ public class RiverServiceImpl implements RiverService { } return riverJson; } + + @Override + public List findModelRiverInfo() { + return riverDao.findModelRiverInfo(); + } + + @Override + public String findModelRiverByName(String riverName) { + String riverJson = null; + List queryRiver + = riverDao.findModelRiverByName(riverName); + try { + riverJson = FeatureUtilities.JavaBeans2Json(queryRiver); + } catch (IllegalAccessException | IOException e) { + throw new BusinessException("ModelRiver实体转GeoJSON出错"); + } + return riverJson; + } } diff --git a/src/test/java/com/gis3c/spatial/App.java b/src/test/java/com/gis3c/spatial/App.java index 8b94840..e864821 100644 --- a/src/test/java/com/gis3c/spatial/App.java +++ b/src/test/java/com/gis3c/spatial/App.java @@ -9,11 +9,13 @@ import com.gis3c.ol.service.MapService; import com.gis3c.ol.service.SourceService; import com.gis3c.spatial.common.FeatureUtilities; import com.gis3c.spatial.common.GeometryUtilities; +import com.gis3c.spatial.entity.ModelRiver; import com.gis3c.spatial.entity.Region; import com.gis3c.spatial.entity.RegionType; import com.gis3c.spatial.service.RegionService; import com.gis3c.spatial.service.RiverService; import com.gis3c.spatial.service.TestService; +import com.sun.corba.se.spi.ior.ObjectKey; import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.Point; import org.omg.PortableInterceptor.SYSTEM_EXCEPTION; @@ -37,8 +39,15 @@ public class App { return new ClassPathXmlApplicationContext("classpath:spring-config.xml"); } public static void main(String[] args) throws IllegalAccessException, IOException { -// ApplicationContext context = ApplicationInit(); -// RiverService riverService = context.getBean(RiverService.class); + ApplicationContext context = ApplicationInit(); + RiverService riverService = context.getBean(RiverService.class); + + List riverInfo = riverService.findModelRiverInfo(); + System.out.println(riverInfo); + + + + // // String resilt = riverService.findRiversByRiverCodes( // new HashSet<>(Arrays.asList(new String[]{"3783","3363"}))); diff --git a/src/test/resources/mappings/spatial/RiverDao.xml b/src/test/resources/mappings/spatial/RiverDao.xml index 19672e4..1fa3100 100644 --- a/src/test/resources/mappings/spatial/RiverDao.xml +++ b/src/test/resources/mappings/spatial/RiverDao.xml @@ -9,6 +9,13 @@ + + + + + + + + + + \ No newline at end of file