@FeignClient(contextId=
时间: 2023-11-02 17:00:37 浏览: 111
H248协议介绍
5星 · 资源好评率100%
@FeignClient(contextId=...)属性的作用是用于指定Feign客户端的上下文标识。当我们需要创建多个具有相同名称或URL的伪装客户端,但每个客户端使用不同的自定义配置时,可以使用@FeignClient的contextId属性来避免配置bean名称冲突。
通过在@FeignClient注解中设置contextId属性,我们可以为每个具有不同自定义配置的伪装客户端创建一个唯一的上下文标识。这样,Spring Cloud会根据每个上下文标识创建一个独立的ApplicationContext,并在其中包含相应的feign.Decoder,feign.Encoder和feign.Contract配置。
例如,我们可以使用以下方式创建两个伪装客户端,它们的名称都是"stores",但是它们使用不同的自定义配置:
@FeignClient(contextId = "fooClient", name = "stores", configuration = FooConfiguration.class)
public interface FooClient {
//..
}
@FeignClient(contextId = "barClient", name = "stores", configuration = BarConfiguration.class)
public interface BarClient {
//..
}
通过这种方式,我们可以避免自定义配置bean名称冲突,并且每个伪装客户端都可以根据其上下文标识使用相应的配置。
阅读全文