“Spring Boot 自动包规则原理”的版本间的差异
跳到导航
跳到搜索
Jihongchang(讨论 | 贡献) |
Jihongchang(讨论 | 贡献) |
||
第25行: | 第25行: | ||
− | ==== | + | ==== @ComponentScan ==== |
− | + | 指定扫描哪些包; | |
− | |||
==== @EnableAutoConfiguration ==== | ==== @EnableAutoConfiguration ==== | ||
第39行: | 第38行: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | ==== @AutoConfigurationPackage ==== | + | ===== @AutoConfigurationPackage ===== |
<syntaxhighlight lang="java"> | <syntaxhighlight lang="java"> | ||
@Retention(RetentionPolicy.RUNTIME) | @Retention(RetentionPolicy.RUNTIME) |
2023年3月1日 (三) 02:29的版本
https://www.bilibili.com/video/BV19K4y1L7MT/?p=13
引导加载自动配置类
@SpringBootApplication
……
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan(excludeFilters = { @Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class),
@Filter(type = FilterType.CUSTOM, classes = AutoConfigurationExcludeFilter.class) })
public @interface SpringBootApplication {
@SpringBootConfiguration
@Configuration
public @interface SpringBootConfiguration {
@Configuration
代表当前是一个配置类
@ComponentScan
指定扫描哪些包;
@EnableAutoConfiguration
……
@AutoConfigurationPackage
@Import(AutoConfigurationImportSelector.class)
public @interface EnableAutoConfiguration {
……
@AutoConfigurationPackage
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@Import(AutoConfigurationPackages.Registrar.class) //给容器中导入一个组件
public @interface AutoConfigurationPackage {