微服务通过EnableFeignClients调用其他服务的api

项目中需要通过当前service服务要调用到其他service服务的api接口时,可通过EnableFeignClients调用其他服务的api,大概的步骤如下:

1、在springboot的main处加上注解@EnableFeignClients

 

 1 @EnableDiscoveryClient
 2 @SpringBootApplication
 3 @EnableFeignClients
 4 public class MyServiceApplication {
 5 
 6     public static void main(String[] args){
 7         SpringApplication.run(MyServiceApplication.class, args);
 8     }
 9 
10 }

 

 

2、在service层上实现接口,这里注意value可以用serviceId代替,但是最好用value来指定要调用的服务。

      fallback是当程序错误的时候来回调的方法

      方法中要用@PathVariable要注解参数

1 @FeignClient(value = "other-service", fallback = ExampleFeignClientFallback.class)
2 public interface ExampleFeignClient {
3     @RequestMapping(value = "/v1/exampleId/{id}",method = RequestMethod.GET)
4     Long queryById(@PathVariable(name="id") Long id);
5 }


3、编写程序错误时的回调类,实现接口,在错误时回调

 

1 @Service
2 public class ExampleFeignClientFallback implements ExampleFeignClient {
3     @Override
4     public Long queryById(Long id) {
5         return null;
6     }
7 }

 

4、调用该服务

 

1 //声明,自动封装
2 @Autowired
3 private ExampleFeignClient ExampleFeignClient;
4 
5 
6 //调用
7 Long result = ExampleFeignClient.queryById(id);

 

至此,完成整个步骤

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值