From ef47644c0b2d8cb9d95e8ca3d650ce061956994f Mon Sep 17 00:00:00 2001 From: chaiyapeng <3535863041@qq.com> Date: Sat, 24 Aug 2024 18:59:31 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B0=94=E8=B1=A1=E9=A2=84=E8=AD=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mart/controller/MarketController.java | 7 +++ .../cloud/mart/service/MarketService.java | 2 + .../mart/service/impl/MarketServiceImpl.java | 11 +++- .../com/muyu/cloud/mart/utils/Headlines.java | 3 +- .../com/muyu/cloud/mart/utils/IPLocation.java | 2 +- .../com/muyu/cloud/mart/utils/Weather.java | 55 +++++++++++++++++++ 6 files changed, 75 insertions(+), 5 deletions(-) create mode 100644 cloud-mart-server/src/main/java/com/muyu/cloud/mart/utils/Weather.java diff --git a/cloud-mart-server/src/main/java/com/muyu/cloud/mart/controller/MarketController.java b/cloud-mart-server/src/main/java/com/muyu/cloud/mart/controller/MarketController.java index 0f0c1ae..2283ecd 100644 --- a/cloud-mart-server/src/main/java/com/muyu/cloud/mart/controller/MarketController.java +++ b/cloud-mart-server/src/main/java/com/muyu/cloud/mart/controller/MarketController.java @@ -65,5 +65,12 @@ public class MarketController extends BaseController { public Result getHeadlines(){ return marketService.getHeadlines(); } + /** + * 气象预警 + */ + @GetMapping("getWeather") + public Result getWeather(){ + return marketService.getWeather(); + } } diff --git a/cloud-mart-server/src/main/java/com/muyu/cloud/mart/service/MarketService.java b/cloud-mart-server/src/main/java/com/muyu/cloud/mart/service/MarketService.java index 1b5e1c6..2ec593b 100644 --- a/cloud-mart-server/src/main/java/com/muyu/cloud/mart/service/MarketService.java +++ b/cloud-mart-server/src/main/java/com/muyu/cloud/mart/service/MarketService.java @@ -21,4 +21,6 @@ public interface MarketService extends IService { Result getIpPlace(String ip); Result getHeadlines(); + + Result getWeather(); } diff --git a/cloud-mart-server/src/main/java/com/muyu/cloud/mart/service/impl/MarketServiceImpl.java b/cloud-mart-server/src/main/java/com/muyu/cloud/mart/service/impl/MarketServiceImpl.java index 5b81221..90261ad 100644 --- a/cloud-mart-server/src/main/java/com/muyu/cloud/mart/service/impl/MarketServiceImpl.java +++ b/cloud-mart-server/src/main/java/com/muyu/cloud/mart/service/impl/MarketServiceImpl.java @@ -8,6 +8,7 @@ import com.muyu.cloud.mart.utils.IPLocation; import com.muyu.cloud.mart.utils.MobileLocation; import com.muyu.cloud.mart.mapper.MarketMapper; import com.muyu.cloud.mart.service.MarketService; +import com.muyu.cloud.mart.utils.Weather; import com.muyu.common.core.domain.Result; import com.muyu.domain.Market; import com.muyu.domain.PhonePlace; @@ -79,7 +80,7 @@ public class MarketServiceImpl extends ServiceImpl impleme */ @Override public Result getIpPlace(String ip) { - StringBuffer stringBuffer = IPLocation.queryMobileLocation(ip); + StringBuffer stringBuffer = IPLocation.queryIPLocation(ip); return Result.success(stringBuffer); } /** @@ -88,7 +89,13 @@ public class MarketServiceImpl extends ServiceImpl impleme */ @Override public Result getHeadlines() { - StringBuffer stringBuffer = Headlines.queryMobileLocation(); + StringBuffer stringBuffer = Headlines.queryHeadlines(); + return Result.success(stringBuffer); + } + + @Override + public Result getWeather() { + StringBuffer stringBuffer = Weather.queryWeather(); return Result.success(stringBuffer); } } diff --git a/cloud-mart-server/src/main/java/com/muyu/cloud/mart/utils/Headlines.java b/cloud-mart-server/src/main/java/com/muyu/cloud/mart/utils/Headlines.java index e6718bc..4521400 100644 --- a/cloud-mart-server/src/main/java/com/muyu/cloud/mart/utils/Headlines.java +++ b/cloud-mart-server/src/main/java/com/muyu/cloud/mart/utils/Headlines.java @@ -18,7 +18,7 @@ import static com.muyu.cloud.mart.config.IPLocation.params; */ public class Headlines { - public static StringBuffer queryMobileLocation(){ + public static StringBuffer queryHeadlines(){ String apiKey = "cdbb93769c75054e6beda4c1dc0b6a0b"; String apiUrl = "http://v.juhe.cn/toutiao/index"; @@ -28,7 +28,6 @@ public class Headlines { map.put("page", "20"); map.put("page_size", ""); map.put("is_filter", ""); - System.out.println("111"); try { URL url = new URL(String.format(apiUrl + "?" + params(map))); BufferedReader in = new BufferedReader(new InputStreamReader((url.openConnection()).getInputStream())); diff --git a/cloud-mart-server/src/main/java/com/muyu/cloud/mart/utils/IPLocation.java b/cloud-mart-server/src/main/java/com/muyu/cloud/mart/utils/IPLocation.java index d06edce..5a4c788 100644 --- a/cloud-mart-server/src/main/java/com/muyu/cloud/mart/utils/IPLocation.java +++ b/cloud-mart-server/src/main/java/com/muyu/cloud/mart/utils/IPLocation.java @@ -17,7 +17,7 @@ import java.util.stream.Collectors; * @Date:2024/8/23 20:54 */ public class IPLocation { - public static StringBuffer queryMobileLocation(String ip){ + public static StringBuffer queryIPLocation(String ip){ String apiKey = "e84b7d13a9fb87b4ebcc9813e4518955"; String apiUrl = "http://apis.juhe.cn/ip/ipNewV3"; HashMap map = new HashMap<>(); diff --git a/cloud-mart-server/src/main/java/com/muyu/cloud/mart/utils/Weather.java b/cloud-mart-server/src/main/java/com/muyu/cloud/mart/utils/Weather.java new file mode 100644 index 0000000..c5fa735 --- /dev/null +++ b/cloud-mart-server/src/main/java/com/muyu/cloud/mart/utils/Weather.java @@ -0,0 +1,55 @@ +package com.muyu.cloud.mart.utils; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.net.URL; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.HashMap; +import java.util.Map; +import java.util.stream.Collectors; + +/** + * @Author:chaiyapeng + * @Package:com.muyu.cloud.mart.utils + * @Project:cloud-mart + * @name:Weather + * @Date:2024/8/24 18:51 + */ +public class Weather { + public static StringBuffer queryWeather() { + String apiKey = "80e78ee9adaded8b1f42ec9cbdf69ac9"; + String apiUrl = "https://apis.juhe.cn/fapig/alarm/citys"; + + HashMap map = new HashMap<>(); + map.put("key", apiKey); + try { + URL url = new URL(String.format(apiUrl + "?" + params(map))); + BufferedReader in = new BufferedReader(new InputStreamReader((url.openConnection()).getInputStream())); + String inputLine; + StringBuffer response = new StringBuffer(); + while ((inputLine = in.readLine()) != null) { + response.append(inputLine); + } + in.close(); + System.out.println(response); + return response; + } catch (Exception e) { + throw new RuntimeException(e); + } + + } + public static String params(Map map) { + return map.entrySet().stream() + .map(entry -> { + try { + return entry.getKey() + "=" + URLEncoder.encode(entry.getValue(), StandardCharsets.UTF_8.toString()); + } catch (Exception e) { + e.printStackTrace(); + return entry.getKey() + "=" + entry.getValue(); + } + }) + .collect(Collectors.joining("&")); + } +}