【Way to Spring Cloud 5】Spring Cloud Feign

Spring Cloud Feign

什么是Feign

Feign是Netflix公司开源的轻量级Rest客户端(Https://github.com/OpenFeign/feign ),使用 Feign 可以非常方便、简单的实现 Http 客户端,使用 Feign 只需要定义一个接口,然后在接口上添加注解即可。
Spring Cloud 对 Feign 进行了封装,Feign 默认集成了 Ribbon 实现了客户端负载均衡调用。

微服务间的调用就有两种方式:

  1. 通过微服务名称,获得服务的调用地址
  2. 通过接口+注解,获得服务的调用 ——Feign (为适应业界其它程序员提出的,还是遵循面向接口编程)
    类似于以前Mapper接口上使用@Mapper注解进行标识,而使用Feign就只要在接口上标注@FeignClient注解。

Feign实战操作

新建 microservice-cloud-07-consumer-product-feign,参考microservice-cloud-04-consumer-product-
80,并拷贝microservice-cloud-04-consumer-product-
80*的pom文件、application.yml 与 java类路径 下的所有文件

修改主启动类名,ProductConsumer_80_Feign,添加启动注解
在这里插入图片描述
添加pom依赖
在这里插入图片描述
新建 ProductClientService 接口
在这里插入图片描述
修改ProductController_Feign
在这里插入图片描述
功能测试,发现正常访问且有负载均衡的功能

Feign注意事项

SpringCloud对Feign进行了增强兼容了SpringMVC的注解 ,我们在使用SpringMVC的注解时需要注意:
1、@FeignClient接口方法有基本类型参数在参数必须加@PathVariable(“XXX”) 或 @RequestParam(“XXX”)
2、@FeignClient接口方法返回值为复杂对象时,此类型必须有无参构造方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值