天天看點

Feign基于注解@EnableFeignClients的JDK動态代理對象建立流程(二)

1.說明

這是對上一篇文章的繪圖總結,大緻内容為基于

@EnableFeignClients

如何推導到每個被

@FeignClient

注解的接口的JDK代理對象的建立過程。

這裡面涉及到兩個Spring的元件:

一個是ClassPathScanningCandidateComponentProvider,專門進行包掃描,然後根據注解類型進行過濾并生成對應的BeanDefinition的元件掃描器

還有一個是FactoryBeanRegistrySupport,這個專門對FacotryBean的子類進行getObject方法調用,進而擷取到被@FeignClient注解的接口的JDK代理對象。

2.圖示
Feign基于注解@EnableFeignClients的JDK動态代理對象建立流程(二)