@SpringBootApplication 启动流程

在主配置类上加上@SpringBootApplication注解 表明这是SpringBoot主配置类,
@SpringBootApplication注解主要由以下注解构成

@SpringBootConfiguration   //SpringBoot配置类
@EnableAutoConfiguration  //开启自动配置
@ComponentScan(excludeFilters = { @Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class),
@Filter(type = FilterType.CUSTOM, classes = AutoConfigurationExcludeFilter.class) })
public @interface SpringBootApplication {

@SpringBootConfiguration 本质是@Configuration 再本质是@Component 所以被@SpringBootConfiguration标注的注解是一个组件。

@EnableAutoConfiguration 注解告诉SpringBoot开启自动配置功能;
这样自动配置才能生效;

@AutoConfigurationPackage
@Import(AutoConfigurationImportSelector.class)
public @interface EnableAutoConfiguration {

其中**@AutoConfigurationPackage**:自动配置包
注解实现:
@Import(AutoConfigurationPackages.Registrar.class)
Spring的底层注解@Import,给容器中导入一个组件;导入的组件
由AutoConfigurationPackages.Regiserar.class;
将主配置类所在包及以下包的所有组件扫描到Spring容器;

@Import(AutoConfigurationImportSelector.class)
给容器中添加组件,AutoConfigurationImportSelector:导入那些组件的选择器;将需要导入的组件的全类名以数组的方式返回。最终会给容器中导入非常多的自动配置类(xxxAutoConfiguration);就是给容器中导入这个场景需要的所有组件,并配置号这些组件。
免去了手动编写配置注入功能组件等功能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值