SpringBoot自动配置/装配(SPI)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot自动配置/装配(SPI)相关的知识,希望对你有一定的参考价值。
参考技术A 自己动手写一个启动器的经历:这里报错了,原因是只导入了一个bean而SpringBoot无法启动服务器
解决办法一:将@Import改成@ConponentScan这样就会扫描同级包和子包。
解决办法二:关闭web服务器
自动装配的大概流程 :@EnableAutoConfiguration目的是自动装配在Maven中的第三方依赖,然后通过@Import(seleter)导入selecter,再通过selecter找到对应的.factories文件最终加载了打上@Configuration的文件。
首先开启了自动装配
通过Selector方法返回对应的类的名字
SPI全名为Service Provider Interface
模块 实现方案
| | | | | | | 方案A
调用方 标准服务接口 方案B
| | | | | | | 方案C
基于interface + 策略模式 + 配置模式
整体解决方案的变化
与@Primary@条件注解的区别:具体/粒度小。
以上是关于SpringBoot自动配置/装配(SPI)的主要内容,如果未能解决你的问题,请参考以下文章
SpringBoot的自动装配原理自定义starter与spi机制,一网打尽
程序员必备技能之SpringBoot的自动装配原理,很详细,建议收藏!!!
程序员必备技能之SpringBoot的自动装配原理,很详细,建议收藏!!!