ToB企服应用市场:ToB评测及商务社交产业平台
标题:
SpringBoot自动化配置
[打印本页]
作者:
灌篮少年
时间:
2024-4-20 07:39
标题:
SpringBoot自动化配置
SpringBoot自动化配置
一.SpringBoot自动化配置原理
1.SpringBoot引导类注解介绍
在SpringBoot的启动引导类上有一个@SpringBootApplication注解
复制代码
这个注解中有三个Spring的注解,分别是 @SpringBootConfiguration / @CompoenetScan / @EnableAutoConfiguration
复制代码
2.@SpringBootConfiguration注解介绍
在@SpringBootConfiguration注解中我们能看到一个@Configuration注解,此注解的作用是声明此类是一个配置类,所以标记了@SpringBootConfiguration注解的类,就是一个配置类
复制代码
3.@CompoenetScan注解介绍
此注解为组件扫描注解,作用是来指定扫描路径,扫描路径为引导类所在的包及子包下的组件
4.@EnableAutoConfiguration注解介绍
在@EnableAutoConfiguration注解上有一个@Import注解,导入了一个配置类,这个配置类是AutoConfigurationImportSelector,在配置类中有一个方法,在这个配置类加载时会自动调用
复制代码
在这个方法中框起来的部分会去扫描 META-INF/spring.factories的文件中Key为EnableAutoConfiguration的所有数据,同时还会扫描 META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports 中的数据,再经过@CondtionalXxx的条件判断,把满足条件的内容加载到内存中,封装成一字符串数组
复制代码
二.自动化配置的实现
在启动类中的run方法,会把上面注解实现加载到内存中的字符串数组根据条件反射创建对象,把对象当作bean注入到Spring容器中
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4