一、前言
Spring的出现给我们管理bean的依赖注入提供了便捷,但是当我们需要使用通过pom引入的jar里面的一个bean时候,还是需要手动在xml配置文件里面主要注入的bean 。springboot则可以依据classpath里面的依赖内容来自动配置bean到IOC容器,Auto-configuration会尝试推断哪些beans是用户可能会需要的。比如如果HSQLDB包在当前classpath下,并且用户并没有配置其他数据库链接,这时候Auto-configuration功能会自动注入一个基于内存的数据库连接到应用的IOC容器。但是要开启这个自动配置功能需要添加@EnableAutoConfiguration注解。
Auto-configuration使用在class上标注@Configuration注解实现,并且使用@Configuration的时候一般带有一定的约束,比如同时还在class上标注了 @Conditiona

本文介绍了Springboot的自动配置特性,通过@EnableAutoConfiguration注解启用,根据classpath中的依赖和条件注解如@ConditionalOnClass、@ConditionalOnMissingBean进行bean的自动注入。以web容器为例,解释了如何通过EmbeddedServletContainerAutoConfiguration类自动配置Tomcat或Jetty。最后,总结了spring-boot-autoconfigure模块如何实现模块化和可扩展性,类比于SPI机制。
最低0.47元/天 解锁文章
1059

被折叠的 条评论
为什么被折叠?



