SpringBoot自动化配置原理

先在pom.xml文件中引入配置依赖

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-autoconfigure</artifactId>
            <version>2.1.4.RELEASE</version>
        </dependency>

位于启动类上的核心注解@SpringBootApplication
这个SpringBootApplication注解是一个复合注解

  1. 第一个注解是 @SpringBootConfiguration,底层是一个@Configuration注解,声明当前类是一个配置类
  2. 第二个注解是@ComponentScan,是一个组件扫描,spring会扫描引导类所在的包及子包下的组件(主类包下的所有类)
  3. 第三个注解是@EnableAutoConfiguration,底层是通过@Import注解导入一个AutoConfigurationImportSelector配置类,这个配置类会自动调用 selectImports 方法,这个方法会去扫描 META-INF/spring.factories的文件中Key为EnableAutoConfiguration的所有数据,同时还会扫描 META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports 中的数据,再经过@CondtionalXxx的条件判断,把满足条件的内容加载到内存中,封装成一字符串数组

启动类中的run方法

SpringApplication.run(TliasApplication.class, args);

这个方法会把上面注解实现加载到内存中的字符串数组根据条件反射创建对象,把对象当作bean注入到Spring容器中

posted @   菜鸟5487  阅读(11)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示