生活随笔
收集整理的這篇文章主要介紹了
获取天气数据 (根据天气接口返回的数据)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
第一次寫(xiě)博客(如有侵權(quán)請(qǐng)通知我,立馬刪除)
獲取天氣數(shù)據(jù) (根據(jù)天氣接口返回的數(shù)據(jù))
接口:心知天氣
ulr:https://api.seniverse.com/v3/pro/weather/grid/now.json?key=your_api_key&location=39.865927:116.359805
請(qǐng)求參數(shù):
key:你的API密鑰
location:所查詢(xún)的位置
參數(shù)值范圍:
經(jīng)緯度 例如:location=39.93:116.40(格式是 緯度:經(jīng)度,英文冒號(hào)分隔)
unit
單位 (可選)
參數(shù)值范圍:
c 當(dāng)參數(shù)為c時(shí),溫度c、風(fēng)速km/h、能見(jiàn)度km、氣壓mb
f 當(dāng)參數(shù)為f時(shí),溫度f(wàn)、風(fēng)速mph、能見(jiàn)度mile、氣壓inch
默認(rèn)值:c
//請(qǐng)求接口的工具類(lèi)
public class GetWeatherUtil {
public static String loadJSON(String LonAndLat) {String url="https://api.seniverse.com/v3/pro/weather/grid/now.json?key=dek53kmszetbxnoj&location="+LonAndLat;StringBuilder json = new StringBuilder();try {URL oracle = new URL(url);URLConnection yc = oracle.openConnection();BufferedReader in = new BufferedReader(new InputStreamReader(yc.getInputStream(),"UTF-8"));String inputLine = null;while ((inputLine = in.readLine()) != null) {json.append(inputLine);}in.close();} catch (MalformedURLException e) {} catch (IOException e) {}return json.toString();
}
}
//這個(gè)功能沒(méi)有用任何框架,都是用的最基本的jdbc
//把獲取下來(lái)的json數(shù)據(jù) 一個(gè)個(gè)取出來(lái) 拼接sql語(yǔ)句實(shí)現(xiàn)增加功能
//每個(gè)小時(shí)的整點(diǎn)都請(qǐng)求一次(定時(shí)器用的是Timer)
TimerTask wetask = new TimerTask() {
@Override
public void run() {
new WriteRegionWeather().writeRegionWeather();}};Timer timer = new Timer();Calendar currentTime = Calendar.getInstance();currentTime.setTime(new Date());int currentHour = currentTime.get(Calendar.HOUR);currentTime.set(Calendar.HOUR, currentHour + 1);currentTime.set(Calendar.MINUTE, 0);currentTime.set(Calendar.SECOND, 0);currentTime.set(Calendar.MILLISECOND, 0);Date NextHour = currentTime.getTime();timer.scheduleAtFixedRate(wetask, NextHour, 1000*60*60);
總結(jié)
以上是生活随笔為你收集整理的获取天气数据 (根据天气接口返回的数据)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。