当前位置: 首页 > news >正文

springboot自动装配的原理

1.SpringBoot加载非 @SpringBootApplication 包以及自包Bean

①@ComponentScan组件扫描
@ComponentScan("com.bite.autoconfig") // 添加包的扫描路径
@SpringBootApplication
public class SpringAutoconfigApplication {public static void main(String[] args) {SpringApplication.run(SpringAutoconfigApplication.class, args);}
}
②@Import 导⼊(使⽤@Import导⼊的类会被Spring加载到IoC容器中)

可以导入的类有三种:

        ①普通类(被@Compent修饰的类或不加@Compent的类也可以)

        ②配置类(被@Comfiguration修饰的类含有@Bean方法注解的配置类)

        ③导入 ImportSelector 接口实现类

③自定义@EnableXxxx注解,封装@Import注解(springboot源码就是这样弄的)

这个方法是基于方法②进行封装的

2.springboot原理分析

阅读源码的流程图:

核心注解的关系图:

@EnableAutoConfiguration注解 中的两个注解的作用: 
  • @Import({AutoConfigurationImportSelector.class}):找到需要自动配置的类,返回配置类列表。
  • @AutoConfigurationPackage:指定包扫描范围(主类所在包),间接影响某些自动配置类的行为。

相关文章:

  • 修改PointLIO项目
  • RHCSA知识点
  • 2025-4-19 情绪周期视角复盘(mini)
  • Linux命令--将控制台的输入写入文件
  • C语言之高校学生信息快速查询系统的实现
  • RocketMQ实现基于可靠消息的最终一致性
  • electron打包是没有正确生成electron.exe,x ENOENT: no such file or directory, rename:
  • 位运算---总结
  • 微信小程序上传腾讯云
  • Dubbo QoS操作手册
  • 【网工第6版】第4章 无线通信网
  • 肖特基二极管详解:原理、作用、应用与选型要点
  • 分布式入门
  • Tailwindcss 入门 v4.1
  • AI大模型发展现状与MCP协议诞生的技术演进
  • Java处理字符串用啥?String、StringBuilder、StringBuffer
  • opencv图像库编程
  • CFS 的调度类型:普通调度 vs 组调度
  • 一键升级OpenSSH/OpenSSL修复安全漏洞
  • 第十一章:多 Agent 系统:复杂协作、挑战与智能涌现
  • 特朗普称加总理将很快访美,白宫:不影响将加拿大打造成“第51个州”计划
  • 微软上财季净利增长18%:云业务增速环比提高,业绩指引高于预期
  • 共绘“彩色上海”,IP SH艺术共创沙龙首期圆满举办
  • 五一“大车流”来了,今日午后G40沪陕高速开始迎来出沪高峰
  • 专访|200余起诉讼,特朗普上台100天,美国已进入宪政危机
  • 浙商银行外部监事高强无法履职:已被查,曾任建行浙江省分行行长