当前位置 : 主页 > 编程语言 > java >

保姆级喂饭 带你看透源码—— 探究Springboot自动装配原理~

来源:互联网 收集:自由互联 发布时间:2022-08-15
原理初探 自动装配: pom.xml * spring-boot-dependencies 核心依赖在父工程中~** 里面有各种各样的jar包 不用写版本 因为都被管理了~ 直接调用即可 我们在写或者引入一些Springboot依赖的时候,

原理初探

自动装配:

pom.xml

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

保姆级喂饭 带你看透源码—— 探究Springboot自动装配原理~_程序员

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

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

<strong>spring-boot-starter-parent </strong></pre>

资源过滤都已经配置好了

保姆级喂饭 带你看透源码—— 探究Springboot自动装配原理~_Java_02

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

保姆级喂饭 带你看透源码—— 探究Springboot自动装配原理~_自动装配_03

启动器

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

保姆级喂饭 带你看透源码—— 探究Springboot自动装配原理~_码字_04

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

  • ** 启动器:就是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自动装配原理~_程序员_05

这里是手动给容器导入组件! [图片上传失败...(image-35d51c-1660012502413)]

保姆级喂饭 带你看透源码—— 探究Springboot自动装配原理~_spring_06

保姆级喂饭 带你看透源码—— 探究Springboot自动装配原理~_spring_07

我们点进去看看

保姆级喂饭 带你看透源码—— 探究Springboot自动装配原理~_Java_08

各种各样的配置!

Properties properties=propertiesLoaderutils.loadproperties(resource);

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

结论:

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

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

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

后期会带来高产的博客

如果对友友们有帮助的话

三连一下吧

码字不易!

保姆级喂饭 带你看透源码—— 探究Springboot自动装配原理~_码字_09


网友评论