springboot自动装配(1)[email protected]注解怎么自动装配各种组件

时间:2021-12-01 18:01:24

1.对于springboot个人认为它就是整合了各种组件,然后提供对应的自动装配和启动器(starter)

 springboot自动装配(1)[email protected]注解怎么自动装配各种组件

 

[email protected]注解其实就是组合注解,通过它找到自动装配的注解@EnableAutoConfiguration,再由@EnableAutoConfiguration导入自动装配选择类AutoConfigurationImportSelector的selectImports方法去MATA-INF/spring.factories下面找到需要自动装配的组件的对应配置(各种AutoConfiguration)

3.简易流程图:

springboot自动装配(1)[email protected]注解怎么自动装配各种组件

 

4.Load配置文件内容找到EnableAutoConfiguration key的值:

 springboot自动装配(1)[email protected]注解怎么自动装配各种组件

 

5.selectImports方法筛选处理:

springboot自动装配(1)[email protected]注解怎么自动装配各种组件

 

6. spring.factories文件里面是什么鬼

RabbitAutoConfiguration   RabbitMQ自动装配的配置.

springboot自动装配(1)[email protected]注解怎么自动装配各种组件

 

 

7.由自动配置类生成该组件对应的配置:

 springboot自动装配(1)[email protected]注解怎么自动装配各种组件