【Spring Boot自动装配】

Spring Boot启动的时候会通过@EnableAutoConfiguration注解找到META-INF/spring.factories配置文件中的所有自动配置类,并对其进行加载,而这些自动配置类都是以AutoConfiguration结尾来命名的,它实际上就是一个JavaConfig形式的Spring容器配置类,它能通过以Properties结尾命名的类中取得在全局配置文件中配置的属性如:server.port,而XxxxProperties类是通过@ConfigurationProperties注解与全局配置文件中对应的属性进行绑定的。

启动类的@SpringBootApplication注解由@SpringBootConfiguration,@EnableAutoConfiguration,@ComponentScan三个注解组成,三个注解共同完成自动装配;

  • @SpringBootConfiguration 注解标记启动类为配置类
  • @ComponentScan 注解实现启动时扫描启动类所在的包以及子包下所有标记为bean的类由IOC容器注册为bean
  • @EnableAutoConfiguration通过 @Import 注解导入 AutoConfigurationImportSelector类,然后通过AutoConfigurationImportSelector 类的 selectImports 方法去读取需要被自动装配的组件依赖下的spring.factories文件配置的组件的类全名,并按照一定的规则过滤掉不符合要求的组件的类全名,将剩余读取到的各个组件的类全名集合返回给IOC容器并将这些组件注册为bean。
相关推荐
菜鸟谢3 小时前
Rust 智能指针完整详解
后端
java小白小3 小时前
SpringBoot(01): 初识SpringBoot,从Spring的痛点说起
spring boot
菜鸟谢3 小时前
Rust 函数完整知识点详解
后端
爱勇宝3 小时前
淡泊名利之前,先承认我们都很焦虑
前端·后端·程序员
菜鸟谢3 小时前
Rust 闭包(Closure)完整详解
后端
ServBay3 小时前
如何利用本地技术栈构建 0 成本 AI SaaS 雏形
后端·aigc·ai编程
菜鸟谢3 小时前
Rust 集合 + 迭代器完整详解
后端
杨利杰YJlio3 小时前
Codex桌面客户端上手:项目、插件与自动化实战
前端·后端
常铭3 小时前
【Java基础】01-HashMap的底层原理
后端·面试
幼儿园技术家4 小时前
实现 GEO 监控:从多引擎探测到优化闭环
前端·后端