spring boot启动类解析
@springbootApplication注解
重要注解:
- @SpringBootConfiguration 就是 @Configuration注解
- @ComponentScan 组件扫描
- @EnableAutoConfiguration
也是组合注解,
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@AutoConfigurationPackage
@Import({AutoConfigurationImportSelector.class})
public @interface EnableAutoConfiguration {
String ENABLED_OVERRIDE_PROPERTY = "spring.boot.enableautoconfiguration";
Class<?>[] exclude() default {};
String[] excludeName() default {};
}
其中重点是@AutoConfigurationPackage注解,结组@Import({AutoConfigurationImportSelector.class}),将spring.facoties中的bean加载到IOC容器中。