Spring Boot自动加载

问:自动装配如何实现的?

答:简单来说就是自动去把第三方组件的Bean装载到IOC容器中,不需要开发人员再去写Bean相关的配置,在springboot应用里面只需要在启动类上去加上@SpringBootApplication注解,就可以去实现自动装配,它是一个复合注解真正去实现自动装配的注解是@EnableAutoConfiguration这样一个注解,自动装配的实现呢,主要依靠三个核心的关键技术。

第一个,引入starter启动依赖组件的时候,这个组件里面必须包含有一个@Configuration配置类,而在这个配置类里面,我们需要通过@Bean这个注解去声明需要装配到IOC容器里面的Bean对象。

第二个,第三方jar包里面的配置类全路径都将放在classpath:/META-INF/spring.factories文件里面,这样的话springboot就可以知道第三方jar包里面这个配置类的位置。这个步骤主要是用到了spring里面的SpringFactoriesLoader来完成的。

第三个,springboot拿到所有第三方jar包里面声明的配置类以后,再通过Spring提供的ImportSelector这样一个接口(@Import注解功能),来实现对这些配置类的动态加载,从而去完成自动装配的动作。

相关推荐
itachi-uchiha15 分钟前
关于Tomcat的页面后台管理默认设置
java·tomcat·firefox
骑着bug的coder18 分钟前
RestTemplate 和 Feign 传参差异导致的接口调用失败
java
金融数据出海23 分钟前
实时性、数据覆盖范围和易用性的优质金融数据源API推荐
后端·金融·区块链·ai编程
momo_via31 分钟前
maven下载与安装及在IDEA中配置maven
java·maven·intellij-idea
渣哥35 分钟前
面试必问:Spring 框架的核心优势,你能说全吗?
javascript·后端·面试
Deschen40 分钟前
设计模式-适配器模式
java·设计模式·适配器模式
开发游戏的老王1 小时前
虚幻引擎虚拟制片入门教程 之 模型资源的导入
java·游戏引擎·虚幻
canonical_entropy1 小时前
告别经验主义:DDD的数学基础与工程实现
后端·架构·领域驱动设计
canonical_entropy1 小时前
软件构造的新物理学: Gemini AI对(广义)可逆计算理论的深度报告
后端
canonical_entropy1 小时前
(广义)可逆计算理论速览-统一软件构造与演化的新范式
后端