package xyz.luyie.weather.service.impl;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import xyz.luyie.weather.service.WeatherService;
import xyz.luyie.weather.vo.ResponseResult;
/**
* Author: 陆袆 >_<
* Time: 2020-08-14 11:19
*/
@Service
@Slf4j
public class WeatherServiceImpl implements WeatherService {
private final static String URL="http://wthrcdn.etouch.cn/weather_mini?city=";
@Autowired
private RestTemplate restTemplate;
@Override
public ResponseResult getCityName(String cityName) {
/**
* 1.需要cityName
* 2.需要网址 http://wthrcdn.etouch.cn/weather_mini?city=赣州
* 3.请求 一般使用httpclient,springboot通过restTemplate 来请求
* 4.获取请求的body
*/
log.info("下面开始请求第三方");
ResponseEntity<String> responseEntity = restTemplate.getForEntity(URL + cityName, String.class);
log.info("responseEntity="+responseEntity);
//获取请求的body
String responseEntityBody = responseEntity.getBody();
//把 responseEntityBody 转成 ResponseResult,通过ObjectMapper
ObjectMapper objectMapper = new ObjectMapper();
ResponseResult responseResult= null;
try {
// objectMapper.readValue(待转数据,哪个类.class);
responseResult = objectMapper.readValue(responseEntityBody, ResponseResult.class);
} catch (JsonProcessingException e) {
e.printStackTrace();
log.info("转换出了异常");
}
return responseResult;
}
}
springboot调用第三方查询天气.zip
需积分: 0 13 浏览量
更新于2020-08-14
1
收藏 24KB ZIP 举报
具体业务逻辑
1.需要cityName
2.需要网址 http://wthrcdn.etouch.cn/weather_mini?city=赣州
3.请求 一般使用httpclient,springboot通过restTemplate 来请求
4.获取请求的body
5.通过ObjectMapper把请求的body转成ResponseResult
6.objectMapper.readValue(待转数据,哪个类.class);
鞠崽23333
- 粉丝: 4190
- 资源: 108
最新资源
- 冲压件自动上料设备3D图纸和工程图机械结构设计图纸和其它技术资料和技术方案非常好100%好用.zip
- 触摸板外观及尺寸检测机3D图纸和工程图机械结构设计图纸和其它技术资料和技术方案非常好100%好用.zip
- 毕业设计-基于springcloud+springboot+mybatis+docker+bootstrap+h plus+微信小程序短视频社交软件 ,微信小程
- 毕业设计-基于SSMLayui框架学生宿舍管理系统全部资料+详细文档+高分项目+源码.zip
- 毕业设计-基于餐厅管理及点菜系统全部资料+详细文档+高分项目+源码.zip
- 毕业设计-基于电影推荐系统全部资料+详细文档+高分项目+源码.zip
- 基于STM32单片机的数控电源设计.zip
- p106显卡驱动,p106-90,p106-100通用
- EasyPlayer.js H5播放器的学习
- 毕业设计-基于超市管理系统(django)全部资料+详细文档+高分项目+源码.zip
- 毕业设计-基于车辆租赁系统全部资料+详细文档+高分项目+源码.zip
- 毕业设计-基于飞机订票系统全部资料+详细文档+高分项目+源码.zip
- C++控制台编程实践:动态绘制圣诞树
- 毕业设计-基于管理系统全部资料+详细文档+高分项目+源码.zip
- 毕业设计-基于进销存管理系统全部资料+详细文档+高分项目+源码.zip
- 毕业设计-基于教务管理系统全部资料+详细文档+高分项目+源码.zip