@SpringbootApplication注解
@SpringBootApplication 是一个组合注解,由 @ComponentScan、@EnableAutoConfiguration 和 @SpringBootConfiguration 组成
-
-
@ComponentScan
-
excludeFilters - 用来在组件扫描时进行排除,也会排除自动配置类
-
-
@EnableAutoConfiguration 也是一个组合注解,由下面注解组成
-
@AutoConfigurationPackage – 用来记住扫描的起始包,包路径
-
@Import(AutoConfigurationImportSelector.class) 用来加载
META-INF/spring.factories
有两个原因:
-
让主配置类和自动配置类变成了强耦合,主配置类不应该知道有哪些从属配置
-
直接用
@Import(自动配置类.class)
,引入的配置解析优先级较高,自动配置类的解析应该在主配置没提供时作为默认配置
因此,采用了 @Import(AutoConfigurationImportSelector.class)
-
由
AutoConfigurationImportSelector.class
去读取META-INF/spring.factories
中的自动配置类,实现了弱耦合。 -
另外
AutoConfigurationImportSelector.class
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端