From 65ee59f1eafc24b08fb07b7cc294c0b9eb2e3414 Mon Sep 17 00:00:00 2001 From: "hukekuan@163.com" Date: Thu, 12 Apr 2018 16:58:02 +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 | 17 ++++++ .../gis3c/spatial/entity/SeparatedRiver.java | 52 +++++++++++++++++++ .../gis3c/spatial/service/RiverService.java | 11 ++++ .../service/impl/RiverServiceImpl.java | 48 +++++++++++++++++ src/test/java/com/gis3c/spatial/App.java | 15 +++--- .../resources/mappings/spatial/RiverDao.xml | 43 +++++++++++++++ 6 files changed, 178 insertions(+), 8 deletions(-) create mode 100644 src/main/java/com/gis3c/spatial/dao/RiverDao.java create mode 100644 src/main/java/com/gis3c/spatial/entity/SeparatedRiver.java create mode 100644 src/main/java/com/gis3c/spatial/service/RiverService.java create mode 100644 src/main/java/com/gis3c/spatial/service/impl/RiverServiceImpl.java create mode 100644 src/test/resources/mappings/spatial/RiverDao.xml diff --git a/src/main/java/com/gis3c/spatial/dao/RiverDao.java b/src/main/java/com/gis3c/spatial/dao/RiverDao.java new file mode 100644 index 0000000..28ddf3d --- /dev/null +++ b/src/main/java/com/gis3c/spatial/dao/RiverDao.java @@ -0,0 +1,17 @@ +package com.gis3c.spatial.dao; + +import com.gis3c.common.persistence.annotation.C3SpatialDao; +import com.gis3c.spatial.entity.SeparatedRiver; +import org.apache.ibatis.annotations.Param; + +import java.util.List; +import java.util.Set; + +/** + * Created by hukekuan on 2018/4/12. + */ +@C3SpatialDao +public interface RiverDao { + public List findRiversByStationCodes(@Param("stationCodes") Set stationCodes); + public List findRiversByRiverCodes(@Param("riverCodes") Set riverCodes); +} diff --git a/src/main/java/com/gis3c/spatial/entity/SeparatedRiver.java b/src/main/java/com/gis3c/spatial/entity/SeparatedRiver.java new file mode 100644 index 0000000..f638f17 --- /dev/null +++ b/src/main/java/com/gis3c/spatial/entity/SeparatedRiver.java @@ -0,0 +1,52 @@ +package com.gis3c.spatial.entity; + +/** + * Created by hukekuan on 2018/4/12. + */ +public class SeparatedRiver extends BaseFeature{ + private String riverCode; + private String riverName; + private String stationCode; + private String stationName; + private String level; + + public String getRiverCode() { + return riverCode; + } + + public void setRiverCode(String riverCode) { + this.riverCode = riverCode; + } + + public String getRiverName() { + return riverName; + } + + public void setRiverName(String riverName) { + this.riverName = riverName; + } + + public String getStationCode() { + return stationCode; + } + + public void setStationCode(String stationCode) { + this.stationCode = stationCode; + } + + public String getStationName() { + return stationName; + } + + public void setStationName(String stationName) { + this.stationName = stationName; + } + + public String getLevel() { + return level; + } + + public void setLevel(String level) { + this.level = level; + } +} diff --git a/src/main/java/com/gis3c/spatial/service/RiverService.java b/src/main/java/com/gis3c/spatial/service/RiverService.java new file mode 100644 index 0000000..6a31597 --- /dev/null +++ b/src/main/java/com/gis3c/spatial/service/RiverService.java @@ -0,0 +1,11 @@ +package com.gis3c.spatial.service; + +import java.util.Set; + +/** + * Created by hukekuan on 2018/4/12. + */ +public interface RiverService { + public String findRiversByStationCodes(Set stationCodes); + public String findRiversByRiverCodes(Set riverCodes); +} diff --git a/src/main/java/com/gis3c/spatial/service/impl/RiverServiceImpl.java b/src/main/java/com/gis3c/spatial/service/impl/RiverServiceImpl.java new file mode 100644 index 0000000..fc11e90 --- /dev/null +++ b/src/main/java/com/gis3c/spatial/service/impl/RiverServiceImpl.java @@ -0,0 +1,48 @@ +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.SeparatedRiver; +import com.gis3c.spatial.service.RiverService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.io.IOException; +import java.util.List; +import java.util.Set; + +/** + * Created by hukekuan on 2018/4/12. + */ +@Service +public class RiverServiceImpl implements RiverService { + @Autowired + private RiverDao riverDao; + + @Override + public String findRiversByStationCodes(Set stationCodes) { + String riverJson = null; + List riverList + = riverDao.findRiversByStationCodes(stationCodes); + try { + riverJson = FeatureUtilities.JavaBeans2Json(riverList); + } catch (IllegalAccessException | IOException e) { + throw new BusinessException("River实体转GeoJSON出错"); + } + return riverJson; + } + + @Override + public String findRiversByRiverCodes(Set riverCodes) { + String riverJson = null; + List riverList + = riverDao.findRiversByRiverCodes(riverCodes); + try { + riverJson = FeatureUtilities.JavaBeans2Json(riverList); + } catch (IllegalAccessException | IOException e) { + throw new BusinessException("River实体转GeoJSON出错"); + } + return riverJson; + } +} diff --git a/src/test/java/com/gis3c/spatial/App.java b/src/test/java/com/gis3c/spatial/App.java index 9838978..8b94840 100644 --- a/src/test/java/com/gis3c/spatial/App.java +++ b/src/test/java/com/gis3c/spatial/App.java @@ -12,6 +12,7 @@ import com.gis3c.spatial.common.GeometryUtilities; 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.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.Point; @@ -36,14 +37,12 @@ public class App { return new ClassPathXmlApplicationContext("classpath:spring-config.xml"); } public static void main(String[] args) throws IllegalAccessException, IOException { - ApplicationContext context = ApplicationInit(); - - Set data = new HashSet<>(); - data.add(1); - data.add(2); - data.add(3); - - System.out.println(data.contains(1)); +// ApplicationContext context = ApplicationInit(); +// RiverService riverService = context.getBean(RiverService.class); +// +// String resilt = riverService.findRiversByRiverCodes( +// new HashSet<>(Arrays.asList(new String[]{"3783","3363"}))); +// System.out.println(resilt); diff --git a/src/test/resources/mappings/spatial/RiverDao.xml b/src/test/resources/mappings/spatial/RiverDao.xml new file mode 100644 index 0000000..19672e4 --- /dev/null +++ b/src/test/resources/mappings/spatial/RiverDao.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + \ No newline at end of file