SpringBoot 之自动配置原理

2.4、自动配置原理

  1. SpringApplication 类在构建的时候,会为我们加载 META-INF/spring.factories 文件,

继续深入,我们可以发现在 SpringApplication 类的 getSpringFactoriesInstances() 方法中加载了 MATE-INF/spring.factories 文件,然后有通过 createSpringFactoriesInstances() 方法帮我们创建的自动配置的类

发现此处会利用类加载器加载一个文件: META-INF/spring.factories 。我们知道,ClassLoader 默认是从 classpath 下读取文件,因此,SpringBoot 会在初始化的时候,加载所有 classpath:META-INF/spring.factories 文件,包括 jar 包当中的。而在 Spring 的一个依赖包:spring-boot-autoconfigure 中,就有这样的文件:


所以我们在自定义启动器的时候,也会创建这样文件(spring.factories)

posted @ 2022-05-06 13:55  ayi8  阅读(68)  评论(0)    收藏  举报