【每日阅读】2021年04月28日-spring boot注解之EnableAutoConfiguration

@SpringBootApplication注解是spring boot启动类上面需要标注的,而这个注解其实是这三个注解的组合

@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan

其中最重要的当属@EnableAutoConfiguration注解了。这个注解内又有这么一行注解

@Import(AutoConfigurationImportSelector.class)

为spring容器引入了AutoConfigurationImportSelector这个类,这个类内部有一个很重要的方法叫selectImports,也就是这个方法将所有可能有的自动配置类加载到了spring内,依次进入方法:getAutoConfigurationEntry、getCandidateConfigurations、SpringFactoriesLoader.loadFactoryNames、loadSpringFactories,就到达了最底层获取自动配置类的代码。

从@EnableAutoConfiguration注解的import的AutoConfigurationImportSelector类进入loadFactoryNames方法时,会从META-INF/spring.factories文件获取key为”org.springframework.boot.autoconfigure.EnableAutoConfiguration”的value

20210429002829

然后spring就知道分别遍历这127个自动配置类,进行下一步的自动配置动作了。

原创文章,作者:geekgao,如若转载,请注明出处:https://www.geekgao.cn/archives/2982

(0)
geekgaogeekgao博主
上一篇 2021年4月28日
下一篇 2021年4月30日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

GitHub
分享本页
返回顶部

Warning: error_log(/usr/local/lighthouse/softwares/wordpress/wp-content/plugins/spider-analyser/#log/log-0119.txt): failed to open stream: No such file or directory in /usr/local/lighthouse/softwares/wordpress/wp-content/plugins/spider-analyser/spider.class.php on line 2900