SpringBoot自动装配的原理分析

理解:

SpringBootApplication底层代码图示:最重要的三个注解

  • @SpringBootConfiguration:底层就是@Component组件类
  • @EnableAutoConfiguration-->@AutoConfigurationPackage和@Import(AutoConfigurationImportSelector.class)

              

/**
* Return the class used by {@link SpringFactoriesLoader} to load configuration
* candidates.
* @return the factory class
*/
protected Class<?> getSpringFactoriesLoaderFactoryClass() {
	return EnableAutoConfiguration.class;
}

然后去配置类获取

  • @ComponentScan(excludeFilters = { @Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class), @Filter(type = FilterType.CUSTOM, classes = AutoConfigurationExcludeFilter.class) })

 

  1. Springboot启动会加载大量的自动配置类(xxxAutoConfiguration),
  2. 我们看我们需要的功能是否在springboot默认写好的自动配置类当中。
  3. 我们再来看这个自动配置类中到底配置了哪些组件;(只要我们要用的组件存在其中,我们就不需要手动配置了)
  4. 给容器中自动配置类添加组件的时候,会从properties类中获取某些属性。我们只需要在配置文件中指定这些属性的值即可。

xxxAutoConfiguration:自动配置类,给容器中添加组件

xxxProperities:封装配债文件中的相关属性,如果要修改这些属性,就修改对应的配置yml

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值