探究Springboot自动装配原理

发布于:2022-08-08 ⋅ 阅读:(354) ⋅ 点赞:(0)

 

 ??前言

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

今天给大家带来的是

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

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

小王的主页:小王同学?

小王的gitee:小王同学?

小王的github:小王同学?

 

 

 原理初探

自动装配:

pom.xml

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

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

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

spring-boot-starter-parent 

资源过滤都已经配置好了

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

 

 启动器

  <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

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

  •  启动器:就是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}):自动导入选择

 这里是手动给容器导入组件!

 

 

我们点进去看看

 

 各种各样的配置!

Properties properties=propertiesLoaderutils.loadproperties(resource);

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

结论:

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

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

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

后期会带来高产的博客 

如果对友友们有帮助的话 

三连一下吧

码字不易!

 

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到