从源码看SpringBoot自动装配

一图带你看SpringBoot自动装配

SpringBoot从浅至深

  • 搭建springboot环境,非常的简单!不需要如何的配置文件,只需要一个引导类,run起来就完事了!
  • @SpringBootApplication注解
    • 引导类里面只有一个注解@SpringBootApplication注解,从里面看有3个注解比较重要

    • @SpringBootConfiguration注解

      • 从源码看其等同@Configuration,即标注该类是Spring的一个配置类
    • @ComponentScan注解

      • 学习spring过后,这个就很简单了。就是注解扫描
      • 扫描当前类下的package,@Controller/@Service/@Component/@Repository等注解
    • @EnableAutoConfiguration注解

      • @AutoConfigurationPackage注解:自动配置包
        • 里面还是依靠的@Import注解,注解扫描的工作。
      • @Import注解:给IOC容器导入组件
        1. FACTORIES_RESOURCE_LOCATION的值是META-INF/spring.factories
        2. Spring启动的时候会扫描所有jar路径下的META-INF/spring.factories,将其文件包装成Properties对象
        3. 从Properties对象获取到key值为EnableAutoConfiguration的数据,然后添加到容器里边。

总结

@SpringBootApplication等同于下面三个注解:

  • @SpringBootConfiguration
  • @EnableAutoConfiguration
  • @ComponentScan
    这3个注解,其中@EnableAutoConfiguration是关键注解,作用是启动自动配置。内部实际使用@Import注解,加载META-INF/spring.factories文件的信息,然后筛选出以EnableAutoConfiguration为key的数据,加载到IOC容器中,实现自动配置功能!

转载于:https://juejin.im/post/5cfdbe6c6fb9a07ece67c3dc

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值