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

655 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第14天,点击查看活动详情

写在前面

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

我会创建一个新的专栏,来保存我最近使用Feign的一些心得和问题点,欢迎大家关注。

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

前面已经说过了,踩坑太多,面试总问。

参数一栏表

@FeignClient的源码示例图如下:

image.png

今天我们接着来说剩下的参数。

decode404

decode404参数是一个布尔值,决定着是否在feign接口调用404状态时,抛出通过decode解码的异常信息。

此参数默认值为false。

一般在测试环境,或者想显示的去捕获此类日志的时候去使用。

使用示例如下:

@FeignClient(value = "demo1", contextId = "demo1-1", qualifier = "demo1Feign", url = "https://baidu.com", decode404 = true)
configuration

configuration参数指定的是一个类,从名称上来就知道是配置相关的类;只不过这里的配置类需要自行去定义。

在配置类中,可以配置日志控制级别、解码、加密等等的操作。

在基本使用的情况一般不会去自定义这个配置类,除非对当前的feign接口有一些特殊处理时才会使用。

fallback

fallback参数,从名称一看就是反馈,这个参数和上面的configuration的使用差不多,都是指向一个类。

只不过fallback指向的是一个实现当前feign接口的实现类。

在feign接口被调用时,因其他服务出问题或者404时,这个时候就会默认调用fallback指向类的具体方法。

以此来做到回滚的操作。

一般也是为了回滚和记录问题才会使用,属于常用的参数范畴。

使用示例如下:

@FeignClient(value = "demo1", fallback = FileFallback.class)

小结

今天我们就FeignClient注解的decode404、configuration、fallback参数做出了解释和应用示例,大家学废了吗?

后面还有和fallback参数相似却更完善的fallbackFactory等参数的解释,可以关注专栏查看下一篇文章。