Springboot主程序类注解配置过程图解
@SpringBootApplication
点进这个注解看
进去第一个注解@SpringBootConfiguration看,上面有Configuration注解
@Configuration 这是Spring的配置类注解, 说明这个类一个配置类,里面都是配置文件
进第二个注解@EnableAutoConfiguration, 顾名思义,这是允许自动配置生效的注解, 接下来进去看它。
@EnableAutoConfiguration
进去后也有两个注解:第一个AutoConfigurationPackage,进去看
里面有这个注解,@Import({Registrar.class}) @Import是spring的底层注解,作用是给Spring导入一个Registrar组件
进去看Registrar
将主配置类所在的包以及以下的包里的所有组件,扫描到Spring容器中。
第二个@Import({AutoConfigurationImportSelector.class})
进AutoConfigurationImportSelector里看,
这个configurations数组是我们需要导入的组件。看看configurations有什么,
实际上是将所有需要导入的组件以类全名的方式返回,这些组件会导入到容器中
能看到是从META-INF/spring.factories里获取EnableAutoConfiguration指定的值,将这些值作为自动配置类导入到容器中,自动配置类就生效,帮我们完成自动配置工作:
看看spring.factories里有什么,有非常多的自动配置类 XXXAutoCOnfiguration(这里就不进去看了),@Import({AutoConfigurationImportSelector.class})就是给容器中导入这个场景需要的所有组件并且配置好
注意spring-boot-autoconfigure.jar包。这里面有所有自动配置的组件
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
使用spring aop 统一捕获异常和写日志的示例demo
本文通过一个小demo给大家介绍spring AOP 实现的异常捕获和日志的方法技巧,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧2021-08-08springboot扫描自定义的servlet和filter代码详解
本文是一篇根据作者工作经历总结出来的关于springboot扫描自定义的servlet和filter代码详解的文章,小编觉得非常不错,这里给大家分享下,和朋友们一起学习,进步。2017-10-10解决ObjectMapper.convertValue() 遇到的一些问题
这篇文章主要介绍了解决ObjectMapper.convertValue() 遇到的一些问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-06-06
最新评论