企业列表出来了
parent
86712ed438
commit
816a123b54
|
@ -0,0 +1,143 @@
|
||||||
|
package com.muyu.market.config;
|
||||||
|
|
||||||
|
import net.sf.json.JSONObject;
|
||||||
|
|
||||||
|
import java.io.*;
|
||||||
|
import java.net.HttpURLConnection;
|
||||||
|
import java.net.URL;
|
||||||
|
import java.net.URLEncoder;
|
||||||
|
import java.nio.charset.StandardCharsets;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
public class SimpleWeatherConfig {
|
||||||
|
// 天气情况查询接口地址
|
||||||
|
public static String API_URL = "http://apis.juhe.cn/simpleWeather/query";
|
||||||
|
// 接口请求Key
|
||||||
|
public static String API_KEY = "4f239dff320341912a8d7363851647c5";
|
||||||
|
|
||||||
|
public static void addr(String addr) {
|
||||||
|
String cityName = addr;
|
||||||
|
queryWeather(cityName);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据城市名查询天气情况
|
||||||
|
*
|
||||||
|
* @param cityName
|
||||||
|
*/
|
||||||
|
public static String queryWeather(String cityName) {
|
||||||
|
Map<String, Object> params = new HashMap<>();//组合参数
|
||||||
|
params.put("city", cityName);
|
||||||
|
params.put("key", API_KEY);
|
||||||
|
String queryParams = urlencode(params);
|
||||||
|
|
||||||
|
String response = doGet(API_URL, queryParams);
|
||||||
|
try {
|
||||||
|
JSONObject jsonObject = JSONObject.fromObject(response);
|
||||||
|
int error_code = jsonObject.getInt("error_code");
|
||||||
|
if (error_code == 0) {
|
||||||
|
System.out.println("调用接口成功");
|
||||||
|
|
||||||
|
JSONObject result = jsonObject.getJSONObject("result");
|
||||||
|
JSONObject realtime = result.getJSONObject("realtime");
|
||||||
|
|
||||||
|
System.out.printf("城市:%s%n", result.getString("city"));
|
||||||
|
System.out.printf("天气:%s%n", realtime.getString("info"));
|
||||||
|
System.out.printf("温度:%s%n", realtime.getString("temperature"));
|
||||||
|
System.out.printf("湿度:%s%n", realtime.getString("humidity"));
|
||||||
|
System.out.printf("风向:%s%n", realtime.getString("direct"));
|
||||||
|
System.out.printf("风力:%s%n", realtime.getString("power"));
|
||||||
|
System.out.printf("空气质量:%s%n", realtime.getString("aqi"));
|
||||||
|
} else {
|
||||||
|
System.out.println("调用接口失败:" + jsonObject.getString("reason"));
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
return response;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* get方式的http请求
|
||||||
|
*
|
||||||
|
* @param httpUrl 请求地址
|
||||||
|
* @return 返回结果
|
||||||
|
*/
|
||||||
|
public static String doGet(String httpUrl, String queryParams) {
|
||||||
|
HttpURLConnection connection = null;
|
||||||
|
InputStream inputStream = null;
|
||||||
|
BufferedReader bufferedReader = null;
|
||||||
|
String result = null;// 返回结果字符串
|
||||||
|
try {
|
||||||
|
// 创建远程url连接对象
|
||||||
|
URL url = new URL(new StringBuffer(httpUrl).append("?").append(queryParams).toString());
|
||||||
|
// 通过远程url连接对象打开一个连接,强转成httpURLConnection类
|
||||||
|
connection = (HttpURLConnection) url.openConnection();
|
||||||
|
// 设置连接方式:get
|
||||||
|
connection.setRequestMethod("GET");
|
||||||
|
// 设置连接主机服务器的超时时间:15000毫秒
|
||||||
|
connection.setConnectTimeout(5000);
|
||||||
|
// 设置读取远程返回的数据时间:60000毫秒
|
||||||
|
connection.setReadTimeout(6000);
|
||||||
|
// 发送请求
|
||||||
|
connection.connect();
|
||||||
|
// 通过connection连接,获取输入流
|
||||||
|
if (connection.getResponseCode() == 200) {
|
||||||
|
inputStream = connection.getInputStream();
|
||||||
|
// 封装输入流,并指定字符集
|
||||||
|
bufferedReader = new BufferedReader(new InputStreamReader(inputStream, StandardCharsets.UTF_8));
|
||||||
|
// 存放数据
|
||||||
|
StringBuilder sbf = new StringBuilder();
|
||||||
|
String temp;
|
||||||
|
while ((temp = bufferedReader.readLine()) != null) {
|
||||||
|
sbf.append(temp);
|
||||||
|
sbf.append(System.getProperty("line.separator"));
|
||||||
|
}
|
||||||
|
result = sbf.toString();
|
||||||
|
}
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
} finally {
|
||||||
|
// 关闭资源
|
||||||
|
if (null != bufferedReader) {
|
||||||
|
try {
|
||||||
|
bufferedReader.close();
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (null != inputStream) {
|
||||||
|
try {
|
||||||
|
inputStream.close();
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (connection != null) {
|
||||||
|
connection.disconnect();// 关闭远程连接
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将map型转为请求参数型
|
||||||
|
*
|
||||||
|
* @param data
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public static String urlencode(Map<String, ?> data) {
|
||||||
|
StringBuilder sb = new StringBuilder();
|
||||||
|
for (Map.Entry<String, ?> i : data.entrySet()) {
|
||||||
|
try {
|
||||||
|
sb.append(i.getKey()).append("=").append(URLEncoder.encode(i.getValue() + "", "UTF-8")).append("&");
|
||||||
|
} catch (UnsupportedEncodingException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
String result = sb.toString();
|
||||||
|
result = result.substring(0, result.lastIndexOf("&"));
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
}
|
|
@ -10,6 +10,7 @@ import com.muyu.common.log.annotation.Log;
|
||||||
import com.muyu.common.log.enums.BusinessType;
|
import com.muyu.common.log.enums.BusinessType;
|
||||||
import com.muyu.common.security.annotation.RequiresPermissions;
|
import com.muyu.common.security.annotation.RequiresPermissions;
|
||||||
import com.muyu.market.config.MobileLocationConfig;
|
import com.muyu.market.config.MobileLocationConfig;
|
||||||
|
import com.muyu.market.config.SimpleWeatherConfig;
|
||||||
import com.muyu.market.config.ThirdPartyConfig;
|
import com.muyu.market.config.ThirdPartyConfig;
|
||||||
import com.muyu.market.domain.SysApitype;
|
import com.muyu.market.domain.SysApitype;
|
||||||
import com.muyu.market.service.ISysApitypeService;
|
import com.muyu.market.service.ISysApitypeService;
|
||||||
|
@ -112,6 +113,9 @@ public class SysApitypeController extends BaseController
|
||||||
String mobile = MobileLocationConfig.queryMobileLocation(UnknownValue);
|
String mobile = MobileLocationConfig.queryMobileLocation(UnknownValue);
|
||||||
return mobile;
|
return mobile;
|
||||||
}
|
}
|
||||||
|
if (sysId==3){
|
||||||
|
return SimpleWeatherConfig.queryWeather(UnknownValue);
|
||||||
|
}
|
||||||
return "error";
|
return "error";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue