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的自动装配原理,很详细,建议收藏!!!

SpringBoot的自动装配(一)

springboot自动装配---实现一个自定义自动装配组件

springboot 自动装配