原理解析
首先,你要理解SpringBoot的自动配置原理。这两篇文章深入浅出解析源码,可以给予你很大帮助:
- 《【SpringBoot】深入源码理解SpringBoot自动配置原理——第一讲:入口的组合注解做了什么?》
- 《【SpringBoot】深入源码理解SpringBoot自动配置原理——第二讲:强大的自动配置类!》
接着,再来回顾一些知识点:
- SpringBoot会通过自动配置类,做出Bean并自动配置好,然后放到Spring环境中;
- 这个过程中,使用的是对应Properties资源类中的默认属性;
- 而如果我们手动在application.properties/application.yml中配置了属性,则会对自动配置属性进行覆盖。
图解流程
先用文字理顺思路:
(1)先想好我们要配置的是哪个框架/组件的属性;
(2)在左侧依赖列表的自动配置jar包中(spring-boot-autoconfigure),直接找到对应的Properties资源类文件;
(3)如果眼睛不好用 ,可以先去META-INF/spring.factories工厂中找到目标自动配置类的完整类名,作为依据再去左侧找;
(4)Properties资源类的注解上的前缀,拼接上成员变量的名称,组成了一个用于覆盖默认属性的完整路径(在application.properties/application.yml中进行覆盖配置)
举个栗子
① 我们想要配置Redis组件的参数,关键就是找到它的Properties资源类:
② 以此为依据进行application.properties/application.yml的配置:
spring.redis.port=2233
spring:
redis:
port: 2233
? Spring
⭐️ Suki
版权声明:本文为m0_46202073原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。