SpringBoot 自动配置(装配),以及如何配置浅理解

269 阅读2分钟

回顾一下何为注解

回顾一下Spring的注解

自动装配

再回顾下spring boot如何给对象(装配)赋值

Spring Boot装配浅理解

先剖它可以装配哪些类

  • 在依赖中找到org.springframework.boot:spring-boot-autoconfigure:2.4.4,打开MATE-INFO下的spring.factories文件,里面的类就是可以装配的类。

image.png

  • 找一个类点进去,选一个叫HttpEncodingAutoConfiguration的类吧

image.png

  • 观察注解

image.png

  • 点开可以配置的类ServerProperties

image.png

  • 不会装配的类

image.png

要有类需要导入依赖,或自定义一个

小结

1、SpringBoot启动会加载大量的自动配置类(MATE-INFO下的spring.factories文件中的类)

2、自动配置类必须在一定的条件@ConditionalXXX下才能生效;

在application.yaml,加入debug=true属性,即可看哪些类装配了,哪些没有

3、我们看我们需要的功能有没有在SpringBoot默认写好的自动配置类当中,以决定要不要自己写

4、我们再来看这个自动配置类(xxxxAutoConfigurartion)中到底配置了哪些组件;(只要我们要用的组件(@Configuration)存在在其中,我们就不需要再手动配置了)

5、给容器中自动配置类添加组件的时候,会从xxxxProperties类中获取某些属性。我们只需要在配置文件(application.yaml)中指定这些属性的值即可;

xxxxAutoConfigurartion自动配置类;给容器中添加组件

xxxxProperties:可以在配置文件(application.yaml)中写的属性;

6、如果明白了,就可以知道哪些类需要自己写或导入,以及application.yaml中可以写(配置)的属性,一般情况就不用记太多配置了