java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Springboot获取实时天气

Springboot实现获取实时天气

作者:sternschnapper

这篇文章主要为大家详细介绍了如何使用Springboot实现获取实时天气功能,文中的示例代码讲解详细,有需要的小伙伴可以跟随小编一起学习一下

获取天气方式很多,整理一下个人感觉最方便的一个

1.引入maven

        <dependency>
            <groupId>com.squareup.okhttp3</groupId>
            <artifactId>okhttp</artifactId>
            <version>3.14.2</version>
        </dependency>

2.代码

import com.alibaba.fastjson.JSONObject;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
import java.io.IOException;
 
 
public class Weather {
 
    public static String getTemp() throws IOException {
        OkHttpClient client = new OkHttpClient().newBuilder()
                .build();
        Request request = new Request.Builder()
                .url("http://d1.weather.com.cn/sk_2d/101120101.html")
                .method("GET", null)
                .addHeader("Referer", "http://www.weather.com.cn/")
                .build();
        Response response = client.newCall(request).execute();
        String body = response.body().string();
        //去除多余字符串
        body = body.substring(body.indexOf('{'));
        JSONObject jsonObject = JSONObject.parseObject(body);
        System.out.println(jsonObject.getString("cityname")+"= " + jsonObject.getString("temp"));
        return jsonObject.getString("temp");
    }
 
 
}

3.建表语句

CREATE TABLE `weather` (
  `id` varchar(36) NOT NULL,
  `city_name` varchar(32) DEFAULT NULL COMMENT '城市名称',
  `city` varchar(32) DEFAULT NULL COMMENT '城市编码',
  `temp` int(11) DEFAULT NULL COMMENT '温度',
  `tempf` int(11) DEFAULT NULL COMMENT '华氏度',
  `wd` varchar(32) DEFAULT NULL COMMENT '风向',
  `ws` varchar(32) DEFAULT NULL COMMENT '风力',
  `wse` varchar(32) DEFAULT NULL COMMENT '风速',
  `sd` varchar(32) DEFAULT NULL COMMENT '湿度',
  `date_time` datetime DEFAULT NULL COMMENT '日期时间',
  `weather` varchar(32) DEFAULT NULL COMMENT '天气',
  `qy` varchar(32) DEFAULT NULL COMMENT '气压',
  `njd` varchar(32) DEFAULT NULL COMMENT '能见度',
  `rain` decimal(10,2) DEFAULT NULL COMMENT '降雨量',
  `rain24h` decimal(10,2) DEFAULT NULL COMMENT '降雨量24小时',
  `aqi` int(11) DEFAULT NULL COMMENT '空气质量',
  `limitnumber` varchar(32) DEFAULT NULL COMMENT '限号',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

是不是看上去很简单,其实就是很简单。

到此这篇关于Springboot实现获取实时天气的文章就介绍到这了,更多相关Springboot获取实时天气内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文