openFeign(基于ImportBeanDefinitionRegistrar)自动整合到spring中
step1、启动类通过EnableFeignClients 变相注册了FeignClientsRegistrar
启动类如下图
EnableFeignClients注解类如下图
step2、FeignClientsRegistrar 实现了ImportBeanDefinitionRegistrar重写了 registerBeanDefinitions()方法
step3、扫描标记有FeignClient的接口,自动生成代理类 并注册到spring中
下图为扫描的过程
将扫描到的每一个接口类 包装成 FeignClientFactoryBean 并注册到容器中去