Feign

一、简介

1.SpringCloud支持2种调用:restTemplate和Feign客户端

2.Feigm客户端工具,实际开发用的最多

3.Feign是一个声明式的Http客户端调用工具,采用接口+注解方式实现,易读性比较强

二、代码操作

订单服务调用会员服务的例子

1.引入依赖

2.在订单服务建立一个MemberApiFeign接口;@FreignClient(name=参数(参数是会员服务的别名))

3.建立订单服务控制层

4.@EnableFeignClient在main类标识:开启Feign权限

5.把会员服务的访问方法赋值:访问方法,底层自动会转化成http协议,实现RPC远程调用

6.为什么以下二步可以访问:使用注解,通过反射机制,通过服务名称,去注册中心获取实际地址;再通过接口调用方法,获取方法的url地址,再底层转化成rpc远程调用

三、重构Feign接口信息

目前Fegin客户端调用缺点:订单调用会员服务,还要在订单服务定义会员服务的调用方法

1.重构目录结构:

parent---存放共同依赖信息

---api---只有接口,没有实现

-------api-member

-------api-order

----member.impl--它是API接口实现

----order.impl--它是API接口实现

2.具体细节

1.在订单的实现类中,调用编写的会员服务的memberFeigin,从而实现RPC

2.在订单的实现类中,编写memberFeign继承会员服务的接口,这样才能避免定义重复的方法;而且@FeignClient不能放在会员服务接口中,是因为服务降级用的着,降级参数在@FeignClient参数中,而且降级又要定义在订单客户端中

3.会员服务的接口

4.会员服务的实现类,以上三步,这才能通过Feigin访问到该实现类

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值