首页 > 编程语言 > 详细

SpringBoot的自动装配原理

时间:2021-05-12 14:53:45      阅读:11      评论:0      收藏:0      [点我收藏+]

Springboot中有一个主启动类,命名为XXXApplication
技术分享图片
这个启动类上边有一个注解
@SpringBootApplication
这个注解是个复合注解
其定义如下
技术分享图片
上面四个注解是Java中的元注解
自动配置主要是下面三个

  1. @SpringBootConfiguration
    就是个配置类,它是由@Configuration定义的,即@SpringBootConfiguration表明这是个配置类
  2. 接着是ComponentScan,注解可以帮助我们扫描当前包及其子包
  3. @EnableAutoConfiguration 这个注解是自动配置的核心
    技术分享图片
    其中这个
    AutoConfigurationPackage这个注解的定义如下
    技术分享图片
    @Import({Registrar.class})
    这个就是保存扫描路径,提供给spring-data-jpa,扫类似@Entity
    然后是AutoConfigurationImportSelector.class,
    这个注解,这个类里面有个方法
    技术分享图片

这个方法返回一个数组,在这个方法调用一个getAutoConfigurationEntry方法,这个方法源码是

技术分享图片

这个方法调用一个getCandidateConfigurations方法,这个方法,又去调用 SpringFactoriesLoader.loadFactoryNames,这个方法会从META-INF/Spring.facotries中加载配置信息(xxxxAutoConfiguration)
技术分享图片

技术分享图片

SpringBoot的自动装配原理

原文:https://www.cnblogs.com/AI-Creator/p/14759236.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!