快捷搜索: 王者荣耀 脱发

SpringCloud中Feign注解@FeignClient参数一览表

写在前面

Feign是微服务中服务间调用的优选组件,后来的OpenFeign也是基于此来开展的。

为什么要梳理一下Feign注解@FeignClient中的各个参数?

  1. 踩坑太多
  2. 面试总问

参数一栏表

@FeignClient的源码示例图如下:

今天我们接着来说最后的几个参数。

终于要大功告成了!

fallbackFactory

fallbackFactory参数,和我们在上篇文章中学习的fallback很相似,可以说是具备fallback的功能,但比起fallback要更加完善。

fallbackFactory是可以捕获到Feign接口所有发生的异常,并且同样可以实现fallback相关接口来进行自定义回滚代码或者日志记录等等。

这个参数可以说是我们必定会用的参数了。

使用示例如下:

@FeignClient(value = demo1, fallbackFactory = Demo1FallbackFactory.class)
复制代码

更多的使用情况请查看这篇文章:SpringCloud中Feign为什么总是打印不出报错信息?

path

path参数,其实算是一个辅助参数,因为没有这个参数完全不影响Feign接口的使用。

针对这个参数,我们先来看如何使用的?

@FeignClient(value = demo1, fallbackFactory = Demo1FallbackFactory.class, path = /demo1)
复制代码

为什么要写这个demo1的path呢,因为在demo1的api接口中都存在着这个demo1路径,可以将其提取到path这个公共参数中。

在下面的接口路径上自然就可以知道维护自己所需要的路径即可。

primary

在一开始说qualifier参数时,就简单提到了primary这个参数。

这个参数的默认值为true。

就是将本类转化成Bean的,可以让你在业务代码中进行依赖注入。

总结

终于将所有的参数都弄完了,这次再也没有什么不明白的了,面试官,我来了!

经验分享 程序员 微信小程序 职场和发展