springboot的自动配置原理

1.通过@SpringBootConfiguration 引入了@EnableAutoConfiguration(负责启动自动配置功能)

2.@EnableAutoConfiguration 引入了@import

3.Spring容器启动时:加我loc容器时会解析@import 注解

4.@import导入了一个deferredimprotSelector(它会使SpringBoot的自动配置类的顺序在最后,这样方便我们扩展和覆盖)

5.然后读取所有的/META-INF/spring.factories文件(SPI)

6.过滤出所有AutoConfigurtionClas类型的类

7.最后通过@ConditionOnXXx排除无效的自动配置类

相关推荐
不会写DN几秒前
Go中的泛型与any、interface有什么区别?
开发语言·后端·golang
yaoxin521123几秒前
350. Java IO API - Java 文件操作:java.io.File 与 java.nio.file 功能对比 - 2
java·python·nio
凸头5 分钟前
RPC超时原因
java
yaoxin5211236 分钟前
351. Java IO API - Java 文件操作:java.io.File 与 java.nio.file 功能对比 - 3
java·python·nio
池️鱼12 分钟前
Maven 详解:从入门到实践
java·maven·intellij-idea
无心水17 分钟前
【java开发常见错误】5、HTTP调用避坑指南:超时、重试、并发,一个都不能少
java·开发语言·后端·http·架构师·http调用·后端开发错误
iPadiPhone21 分钟前
Java 泛型与通配符全链路解析及面试进阶
java·开发语言·后端·面试
Coder_Boy_27 分钟前
分布式系统“三高”与数据一致性核心实践(基于实操梳理)
java·jvm·spring boot·分布式·微服务·性能优化
青衫客3632 分钟前
Excel 模板解析实践:基于 Apache POI 的结构化 Excel 解析方案
java·excel
liuyao_xianhui37 分钟前
动态规划_简单多dp问题_打家劫舍_打家劫舍2_C++
java·开发语言·c++·算法·动态规划