博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring消费RESTfull服务
阅读量:5078 次
发布时间:2019-06-12

本文共 1357 字,大约阅读时间需要 4 分钟。

使用RestTemplate做这件事非常简单
package hello;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.boot.CommandLineRunner;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.web.client.RestTemplate;@SpringBootApplicationpublic class Application implements CommandLineRunner {    private static final Logger log = LoggerFactory.getLogger(Application.class);    public static void main(String args[]) {        SpringApplication.run(Application.class);    }    @Override    public void run(String... args) throws Exception {        RestTemplate restTemplate = new RestTemplate();        Quote quote = restTemplate.getForObject("http://gturnquist-quoters.cfapps.io/api/random", Quote.class);        log.info(quote.toString());    }}

在日常的工作中我们返回的结果通常是一个Wrapper,含有一个泛型属性来表示真正的业务对象。这就要用到ParameterizedTypeReference

 

代码就成了这样了

 

@Override    public void run(String... args) throws Exception {        RestTemplate restTemplate = new RestTemplate();        ResponseWrapper
quote = restTemplate.exchange("http://gturnquist-quoters.cfapps.io/api/random", HttpMethod.GET, null, new ParameterizedTypeReference
>() {}); log.info(quote.toString()); }

 

转载于:https://www.cnblogs.com/easyroom/p/5706030.html

你可能感兴趣的文章
C# BS消息推送 SignalR介绍(一)
查看>>
WPF星空效果
查看>>
WPF Layout 系统概述——Arrange
查看>>
PIGOSS
查看>>
软件目录结构规范
查看>>
解决 No Entity Framework provider found for the ADO.NET provider
查看>>
设置虚拟机虚拟机中fedora上网配置-bridge连接方式(图解)
查看>>
ES6内置方法find 和 filter的区别在哪
查看>>
Android实现 ScrollView + ListView无滚动条滚动
查看>>
java学习笔记之String类
查看>>
UVA 11082 Matrix Decompressing 矩阵解压(最大流,经典)
查看>>
硬件笔记之Thinkpad T470P更换2K屏幕
查看>>
蓝桥杯-分小组-java
查看>>
Android Toast
查看>>
iOS开发UI篇—Quartz2D使用(绘制基本图形)
查看>>
docker固定IP地址重启不变
查看>>
桌面图标修复||桌面图标不正常
查看>>
JavaScript基础(四)关于对象及JSON
查看>>
JAVA面试常见问题之Redis篇
查看>>
jdk1.8 api 下载
查看>>