Spring Boot 自动装配的原理!!!

@SpringBootApplication

@SpringBootConfiguration:标识启动类是一个IOC容器的配置类

@EnableAutoConfiguration:

@AutoConfigurationPackage:扫描启动类所在包及子包中所有的组件,生成实体bean并交给IOC容器管理

@Import({AutoConfigurationImportSelector.class}):会加载META-INF/spring.factories文件,并调用该文件中的自动配置类完成自动配置工作, 所以我们只需再application.yml中提供mysql的url、用户名、密码等信息即可完成mybatis的自动配置

@ComponentScan:配置springboot要扫描的包

完整描述:首先我们的启动类上有一个@SpringBootApplication注解,这个注解是一个复合注解。它主要包含三个注解:

第一个**@SpringBootConfiguration**标识启动类是一个IOC容器的一个配置类;

第二个**@EnableAutoConfiguration**这个注又包含两个注解:

1、@AutoConfigurationPackage这个注解主要是扫描启动类所在的包及其子包中的所有组件,生成实体Bean交给IOC容器管理。

2、@Import({AutoConfigurangionImportSelector.class})这个注解中的类SpringFactoriesLoader会加载META-INF/spring.factories文件,并调用该文件中的自动配置类完成自动配置工作。例如:所以我们只需在application.yml中提供mysql的url、用户名、密码等信息即可完成mybatis的自动配置。

第三个**@ComponentScan**主要是配置spring boot要扫描的包。

源码解释:

相关推荐
JxWang0512 分钟前
Task01:环境搭建,初识数据库
后端
周杰伦jc12 分钟前
RocketMQ 完全指南:从入门到原理到生产实战、八股面试
后端
小码哥_常12 分钟前
Java可执行JAR包打包大揭秘:三种方式全解析
后端
掘金者阿豪12 分钟前
Halo的“傻瓜建站魔法”:cpolar内网穿透实验室第637个成功挑战
后端
koddnty14 分钟前
c++协程控制流深入剖析
后端·架构
小码哥_常17 分钟前
Spring Boot 集成DFA:打造高效内容安全卫士
后端
砍材农夫18 分钟前
接口限流设计
后端
yhyyht18 分钟前
Spring Data JPA入门记录(一)
后端
SimonKing24 分钟前
OpenCode AI辅助编程,不一样的编程思路,不写一行代码
java·后端·程序员
FastBean31 分钟前
Jackson View Extension Spring Boot Starter
java·后端