SpringBoot到底是如何进行自动配置的?都把哪些组件进行了自动配置?

  1. @SpringBootApplication 注解能够扫描spring组件并自动配置springboot
    1. 该注解是组合注解。由 @SpringBootConfiguration、@EnabledAutoconfiguration、@ComponentScan注解组合。
      SpringBoot到底是如何进行自动配置的?都把哪些组件进行了自动配置?_第1张图片
  2. @SpringBootConfiguration 注解表示当前类为 SpringBoot 的配置类
    SpringBoot到底是如何进行自动配置的?都把哪些组件进行了自动配置?_第2张图片
  3. @EnableAutoConfiguration 注解表示启用 Spring 应用程序上下文的自动配置
    1. 该注解由 @AutoConfigurationPackage、@Import 注解组成
      SpringBoot到底是如何进行自动配置的?都把哪些组件进行了自动配置?_第3张图片
    2. @AutoConfigurationPackage 为自动配置包,会把 @SpringBootApplication 注解标注的类所在的包拿到,并对该包及其子包进行扫描,将组件添加到容器中
      1. @AutoConfigurationPackage 注解被 @Import 注解,属性值为 AutoConfigurationPackages.Registrar
        SpringBoot到底是如何进行自动配置的?都把哪些组件进行了自动配置?_第4张图片
      2. @Import注解是 spring 框架的底层注解,他的作用是给容器中导入某个组件类
      3. 默认将主配置类所在的包及其子包里面的所有组件扫描到 spring 容器中
        SpringBoot到底是如何进行自动配置的?都把哪些组件进行了自动配置?_第5张图片
        SpringBoot到底是如何进行自动配置的?都把哪些组件进行了自动配置?_第6张图片
    3. @Import 注解的属性值为 AutoConfigurationImportSelector,可以帮助 SpringBoot应用把所有符合条件的 @Configuration 配置都加载到当前 SpringBoot 创建并使用的 IoC 容器中

你可能感兴趣的:(Java,SpringBoot,spring,boot,后端,java)