springboot自动配置类源码解析

    技术2023-10-29  99

    注解@SpringBootApplication

    1.如下图所示

    注解@EnableAutoConfiguration

    2.点击以上注解进入后可以看到springboot自动配置注解

    3.点击注解进入后,可以看到@import注解引入了一个class类

    4.EnableAutoConfigurationImportSelector这个类就是springboot自动配置加载的关键,继续点击这个类进入后, 最终发现ImportSelector接口 5.进入此接口后,可以看到这个接口只有一个抽象方法 Spring中该接口的作用就是将String[]数组返回的类信息加载到Spring的IOC容器中管理。

    6.接下来我们看下springboot中该方法是怎么实现的, 7.图中可以看到此抽象方法的具体实现, 如图剪头的所示的方法getCandidateConfigurations,此方法就是将springboot中所有的默认配置类进行加载。

    8.点击List configurations = SpringFactoriesLoader.loadFactoryNames…方法查看如下: 可以看到具体的类加载配置文件,如下图位置所示 打开文件可以看到具体的配置信息。此处就不做截图,最终将所有配置类加载返回到list中。

    springboot整合mvc

    1.可以通过spring.factories文件中搜索webmvc -------->org.springframework.boot.autoconfigure.web.WebMvcAutoConfiguration, 定位到具体的类信息查看

    2.以上源码的基础是能通过@Configuration来配置springmvc;因为springboot就是通过这种方式来实现的。

    以上为本人粗略的观看结果!具体细节没做探讨!

    Processed: 0.014, SQL: 9