springcloud-openfeign组件原理实现流程图
2022-01-19 09:15:34 0 举报
springcloud-openfeign组件原理实现流程图
作者其他创作
大纲/内容
Feign和spring整合的流程
当配置优先时,先使用默认的配置属性FeignClientProperties指定的组件,再使用当前上下文对应的配置属性FeignClientProperties指定的组件,最后使用FeignConfiguration中指定的组件替换预选的组件
通过读取注解FeignClient的注解属性configuration,拿到每个FeignClient的配置类
容器刷新创建每一个FeignClientFactoryBean关联type的bean对象
如果FeignClientProperties为空,则直接使用FeignClientProperties中指定的组件替换预选的组件
通过读取注解@EnableFeignClients的defaultConFiguration注解属性,拿到默认的配置类
注册FeignContext到bean容器
这一步会把@FeignClient的注解属性和目标类型信息作为PropertyValue赋值给FeignClientFactoryBean的属性
从FeignContext中根据FeignClientFactoryBean的contextId创建不同的子AnnotationConfigApplicationContext
注册FeignClient默认的配置到bean容器
注册每一个FeignClient的configuration配置到bean容器
当配置属性优先时,先使用FeignConfiguration中指定的组件,再使用配置属性FeignClientProperties中默认的配置指定的组件,最后使用当前context上下文对应的配置属性FeignClientProperties指定的组件,来替换预选的组件
从bean容器中获取FeignContext对象
注册每一个FeignClientFactoryBean到bean容器
这一步通过调用FeignClientFactoryBean的getObject方法来完成
在getObject方法中调用applicationContext.getBean(FeignContext.class)方法
0 条评论
下一页
为你推荐
查看更多