目录
- 一、背景
- 二、原理
一、背景
- 在Spring的时候,如果我们需要引进一些第三方依赖,还行需要写一些配置类或者xml文件对第三方依赖进行配置。
- 在SpringBoot之后,我们只需要引入这些第三方依赖的一个starter,然后在application.yaml文件中简单的配置一下就完成了这些第三方依赖的配置,这就是得益于SpringBoot的自动装配原理。自动装配也即通过注解或者一些简单的配置就能在 Spring Boot 的帮助下实现某块功能
二、原理
- 首先SpringBoot定义了一个规范,在SpringBoot启动的时候会去扫描第三方jar包的meta-inf/spring.factories文件,里面是一些jar包内的自动配置类的全路径类名,然后SpringBoot根据@conditional注解来按需加载这些自动配置类里面的配置信息到IOC容器,从而完成自动装配。
- 自动配置类:通常以 AutoConfiguration 结尾,例如 DataSourceAutoConfiguration。这些类通过注解和条件判断,为特定的功能模块(如数据库连接池、Web 框架等)提供自动装配支持。
例如我们创建下面的自动配置类,该自动配置类为我们自动装配了一个自定义的线程池对象到容器中。
参考:SpringBoot 自动装配原理详解