Feign---启动流程、执行流程、类图
2021-10-31 15:09:59 0 举报
Feign整体的流程、类图
作者其他创作
大纲/内容
配置
Response
响应实体
拦截器
Encoder
编码器:将数据设置到Body中
InvocationHandler
body体
getBean
发送请求
EnableFeignClients扫描
BuildFormEncodedTemplateFromArgs
url地址
Contract
分析类上的注解方法方法参数
默认配置FeignClientsConfiguration
Options
每个请求对象的设置信息
Default
操作
ResponseMappingDecoder
解析实体
返回值类型
类图
QueryMapEncoder编码器
生产
RequestInterceptor
创建
利用ApplicationContext的原理将ConfigClass注入到Context 上下文中,通过上下文获取指定名称的Bean
MethodHandler
List<MethodMetadata>
Decoder
解析
DeclarativeContract
BaseContract
SynchronousMethodHandler.Factory
创建AppContext
解析结果数据
Feign
fallBack
结束
上下文
方法执行器
form参数
请求头
HystrixInvocationHandler
ReflectiveFeign
FieldQueryMapEncoder
实体查询参数编码器
HystrixDelegatingContract
QueryMapEncoder
将Object对象转换为QueryMap对象
将实体转化为Map对象
启动流程
4、Request
包含:1、url地址2、请求体3、请求头
RequestTemplate.Factory
生产请求模板:利用元数据、请求编码器
Feign.Builder
url
NamedContextFactory
执行请求
自定义属性
Value转化器
开启hystrix
处理结果数据
contextId
target
FeignContext
CollectionFormat
将集合中的数据转化为请求参数
重试
ParseHandlersByName
配置信息
查询参数编码器
SynchronousMethodHandler
FeignClient
创建RequestTemplate
InvocationHandlerFactory
HeadMap
解析器:将响应中的Body解析成对应的类型
解析数据处理
BeanQueryMapEncoder
默认配置信息
异常重试
实例
解码器
设置
代理创建器
BuildTemplateByResolvingArgs
模板工厂URIQueryMapHeaderMap
设置参数
编码器
3、RequestTemplate
构造Http请求的实体
Target
工厂
分析
500--异常处理
执行者
包名
自定义配置Specification
newInstance
1、分析注解信息
build
Decoder404
feign
2、MethodMetadata
方法元数据
QueryMap
FeignContext类
HystrixFeign.Builder
执行
getObject
url索引
请求参数
Client
FeignClientFactoryBean
Factory
默认属性
404
0 条评论
下一页