SpringBoot自动化配置原理

SpringBoot自动化配置的原理:

默认装配启动类starter,它会扫描META-INF/spring.factories。

下面是spring.factories文件的内容格式,根据它我们可以清晰地了解Map>中都存了些什么。其中Key值为:org.springframework.boot.autoconfigure.EnableAutoConfiguration,Value值为后面的各种XXXAutoConfiguration类。他会把key为org.springframework.boot.autoconfigure.EnableAutoConfiguration的所有的值都加载,得到一些全类名的列表,在启动时,会自动反射Bean并加载到spring容器中。

META-INF下文件的使用:

在Java项目中,META-INF目录通常用于存放一些配置文件和资源文件。在Spring框架中,META-INF目录下的spring文件夹和spring.factories文件都用于配置Spring框架的扩展点。

1.META-INF/spring文件夹:

(1)META-INF/spring文件夹下可以放置多个XML配置文件,这些文件会被Spring框架自动加载并解析。

(2)这些XML配置文件可以包含各种Spring相关的配置,如Bean定义、AOP配置、事务配置等。

(3)通常,开发者可以将自定义的Spring配置文件放置在这个目录下,以便Spring框架能够自动加载并应用这些配置。

SpringBoot自动化配置原理_第1张图片

spring阿里云文件上传功能 做成自动配置依赖:

    

SpringBoot自动化配置原理_第2张图片

2.META-INF/spring.factories文件

(1)META-INF/spring.factories是一个文本文件,用于声明Spring框架的扩展点。

(2)这个文件中定义了一些特定的Spring工厂类,这些工厂类会在Spring框架启动时被自动加载和实例化。

(3)这些工厂类可以用于注册自定义的Spring组件,如BeanPostProcessor、BeanFactoryPostProcessor等。

(4)通过在spring.factories文件中配置这些工厂类,可以扩展Spring框架的功能和行为。

spring自动化配置降级服务:

SpringBoot自动化配置原理_第3张图片

你可能感兴趣的:(spring,boot,自动化,java)