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注解功能),来实现对这些配置类的动态加载,从而去完成自动装配的动作。

相关推荐
京东云开发者2 分钟前
Java的SPI机制详解
java
超级小忍24 分钟前
服务端向客户端主动推送数据的几种方法(Spring Boot 环境)
java·spring boot·后端
字节跳跃者26 分钟前
为什么Java已经不推荐使用Stack了?
javascript·后端
字节跳跃者26 分钟前
深入剖析HashMap:理解Hash、底层实现与扩容机制
javascript·后端
程序无bug28 分钟前
Spring IoC注解式开发无敌详细(细节丰富)
java·后端
小莫分享30 分钟前
Java Lombok 入门
java
程序无bug30 分钟前
Spring 对于事务上的应用的详细说明
java·后端
食亨技术团队32 分钟前
被忽略的 SAAS 生命线:操作日志有多重要
java·后端
程序员NEO32 分钟前
精控Spring AI日志
人工智能·后端
苦学编程的谢1 小时前
Maven
java·maven·intellij-idea