当前位置: 首页 > news >正文

Springboot自动装配原理

简单回答:

在项目启动的时候,Spring Boot框架会自动读取META-INF/spring.factories配置文件中org.springframework.boot.autoconfigure.EnableAutoConfiguration所配置的配置类,然后将其中所定义的bean根据条件注解所指定的条件来决定是否需要将其导入到Spring容器中。
 

★详细回答:

1. 在SpringBoot项目中的引导类上有一个注解@SpringBootApplication,这个注解是对三个注解进行了封装,分别是:

  • @SpringBootConfiguration
  • @EnableAutoConfiguration
  • @ComponentScan

2. 其中@EnableAutoConfiguration是实现自动化配置的核心注解。该注解通过@Import注解导入对应的配置选择器。
内部就是读取了该项目和该项目引用的Jar包的classpath路径下

META-INF/spring.factories文件中的所配置的类的全类名。在这些配置类
中所定义的Bean会根据条件注解所指定的条件来决定是否需要将其导入到Spring容器中

3. 条件判断会有像@ConditionalOnClass这样的注解,判断是否有对应的class文件,如果有则加载该类,把这个配置类的所有的Bean放入spring容器中使用。


   

   源码分析:   

 @SpringBootApplication封装了

@SpringBootConfiguration、

@EnableAutoConfiguration、

@ComponmentScan 三个注解

@EnableAutoConfiguration又封装了以下注解

上面图片中绿色封装的自动和装配的类有100多个,下面以redis的自动装配类来分析:


http://www.mrgr.cn/news/61308.html

相关文章:

  • C#自定义事件的案例
  • XD6500S替代翱捷ASR6500S系列低功耗lora SPI模块SX1262/SX1278
  • Spring之HTTP客户端--RestTemplate的使用
  • 揭秘抖音SEO矩阵源码,霸屏秘籍!
  • bean生命周期
  • 煤矿安全大模型:微调internlm2模型实现针对煤矿事故和煤矿安全知识的智能问答
  • 2、片元着色器之有向距离场(SDF)运算:并集、差集、交集
  • 【JavaScript】入门详解
  • 化繁为简的鸿蒙原生开发时代,“开发者”被高度关注
  • 豆瓣同城活动采集-过去一年到未来已定档活动
  • Video-XL:智源研究院开源超基准测试的长视频理解大模型
  • [ACTF2020 新生赛]Exec 1
  • 2. Flink快速上手
  • 如何通过接口版本控制实现向后兼容
  • autojs使用中的一些坑
  • 看低代码开发如何通过几步加速融入产业进程
  • SAP-MM委外订单的退货处理
  • FreeRTOS队列分析
  • M3U8不知道如何转MP4?包能学会的4种格式转换教学!
  • StringBuilder类