探究Springboot自动装配原理

 

 前言

友友们大家好,我是你们的小王同学

今天给大家带来的是

希望能给大家带来有用的知识

觉得小王写的不错的话 麻烦动动小手 点赞 收藏⭐  评论

小王的主页:小王同学

小王的gitee:小王同学

小王的github:小王同学

 

 

 原理初探

自动装配:

pom.xml

  • spring-boot-dependencies 核心依赖在父工程中~

里面有各种各样的jar包 不用写版本 因为都被管理了~ 直接调用即可

我们在写或者引入一些Springboot依赖的时候,不需要指定版本 因为有这些版本的仓库

spring-boot-starter-parent 

资源过滤都已经配置好了

 如果插件下载失败就在这里操作 install一下

探究Springboot自动装配原理_第1张图片

 

 启动器

  
            org.springframework.boot
            spring-boot-starter
        

探究Springboot自动装配原理_第2张图片

 如果把启动器依赖代码删了 程序就崩溃了!

  •  启动器:就是Spring启动的场景
  • 比如 Spring-boot-starter-web 就会帮我们自动导入web的所有依赖
  • Springboot会将所有的功能场景,变成一个个的启动器

主程序

@SpringBootApplication
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }

}

注解

@SpringBootConfiguration: Springboot的配置
@Configuration:Springboot:配置类

@Componnent:是一个Spring的组件

@EnableAutoConfiguration:自动配置

@AutoConfigurationPackage:自动配置包
@Import({Registrar.class}):导入选择器
@Import({AutoConfigurationImportSelector.class}):自动导入选择

探究Springboot自动装配原理_第3张图片

 这里是手动给容器导入组件!探究Springboot自动装配原理_第4张图片

 探究Springboot自动装配原理_第5张图片

 

我们点进去看看

 

 各种各样的配置!

Properties properties=propertiesLoaderutils.loadproperties(resource);

所有资源加载到配置类中~

结论:

springboot所有配置都是在启动的时候扫描并加载 :spring.factories所有的自动配置类都在这里

但是不一定生效,要判断条件是否成立,只要导入了对应的start,就有对应的启动器了,有了启动器 我们自动配置就会生效,然后就会配置成功!

小王就给大家带来这些自动装配的原理跟源码

后期会带来高产的博客 

如果对友友们有帮助的话 

三连一下吧

码字不易!

探究Springboot自动装配原理_第6张图片

 

你可能感兴趣的:(springboot,spring,boot,spring,maven)