【每日阅读】2020年08月15日-spring cloud feign

真诚的希望您能留言与我交流,这会对我有非常大的帮助!

今天继续看《Spring Cloud与Docker微服务架构实战》

什么是Feign


继续了解spring cloud的各个组件,今天了解到一个新的组件,叫Feign,这个组件是帮助我们实现注解化调用REST接口的。

昨天说了前些天看的spring cloud代码示例中用的都是restTemplate来调用REST接口的,缺点是使用起来很繁琐,因为各种参数都需要手拼,使用起来明显缺少一些高级感,比较的原始。

加入Feign后,可以很简单的实现注解调用REST接口。示例如下。

示例

首先引入Feign

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

然后写一个REST请求代理接口

@FeignClient(name = "geekgao-eureka-provider")
public interface ConsumerFeign {
    @RequestMapping(value = "provider", method = RequestMethod.GET)
    return "provider said: " + consumerFeign.requestProvider();
}

最后一步,再spring boot启动类上加上Feign支持的注解

@EnableFeignClients
public class GeekGaoEurekaConsumer {
    ...
}

大功告成的请求截图

【每日阅读】2020年08月15日-spring cloud feign

与restTemplate的比较

不用自己拼接参数在url内了。上述例子没有体现这一点是为了简单。Feign对与get和post请求,可以按如下方式支持多参数

get请求

【每日阅读】2020年08月15日-spring cloud feign

post请求

【每日阅读】2020年08月15日-spring cloud feign
相关文件下载地址
*该资源需回复评论后下载,马上去发表评论?
©下载资源版权归作者所有;本站所有资源均来源于网络,仅供学习使用,请支持正版!

原创文章,作者:geekgao,如若转载,请注明出处:https://www.geekgao.cn/archives/2325

发表评论

登录后才能评论
GitHub
分享本页
返回顶部