当前位置: 首页 > article >正文

SpringBoot原理-02.自动配置-概述

一.自动配置

所谓自动配置,就是Spring容器启动后,一些配置类、bean对象就自动存入了IOC容器当中,而不需要我们手动声明,直接从IOC容器中引入即可。省去了繁琐的配置操作。

我们可以首先将spring项目启动起来,里面有一项 里面有一项beans点击application

里面列出了我们当前spring项目中IOC容器里所有的bean对象。我们可以看到有CommonConfig,里面有个bean对象reader,这与我们的代码一致,类型是SAXReader,也一致。

我们发现还有一个CommonConfig类,里面也有一个bean对象commonConfig,为什么还有一个这个bean对象呢?我们可以打开@Configuration注解。

 发现其就是基于@Component注解的,因此这个配置类也是spring的IOC容器的一部分。

还有我们自己定义的bean

除了我们自己定义的类,这里还有spring自动生成的配置类,比如有一个配置类叫GsonAutoConfiguration,里面有一个bean对象gson。类型也是Gson。这个bean是Google当中提供的,用来处理json格式的数据,如果我们想使用,直接使用@Autowired注入进来即可。 我们准备一个单元测试类:

package com.itheima;

import org.springframework.boot.test.context.SpringBootTest;


/**
* 自动配置原理测试
*/

@SpringBootTest
public class AutoConfigurationTests {
    @AutoWired
    private Gson gson;
    
    @Test
    public void TestJson() {
        String json = gson.toJson(Result.success());
        System.out.println(json);
    }    
}

可以通过@Autowired直接注入这个Gson对象,那是因为IOC容器中存在这个bean对象,那么这个bean对象是哪里来的呢?我们并未没有声明Google提供的这个Gson对象,但可以直接通过@Autowired从Spring容器中注入这个bean对象,这个就是SpringBoot在启动的时候为我们自动配置好的。

后面我们将研究SpringBoot自动配置的原理。研究SpringBoot自动配置的原理就是在研究在SpringBoot项目当中我们引入依赖之后,是如何将依赖jar包当中所定义的bean以及配置类加载到spring的IOC容器中的。


http://www.kler.cn/a/567216.html

相关文章:

  • 【Linux】命令行参数 | 环境变量(四)
  • 超详细,多图文介绍redis集群方式并搭建redis伪集群
  • 25物理学研究生复试面试问题汇总 物理学专业知识问题很全! 物理学复试全流程攻略 物理学考研复试调剂真题汇总
  • Windows之远程终端问题集锦(十二)
  • NAT 代理服务 内网穿透
  • 轻松实现语音生成:GPT-SoVITS V2整合包的远程访问操作详解
  • Linux相关概念和易错知识点(32)(互斥锁和条件变量的封装、日志和线程池的实现)
  • 微软AI900认证备考全攻略:开启AI职业进阶之路
  • 网络编程 (UDP 和 TCP 介绍和代码实现) [Java EE]
  • 深度学习的正则化深入探讨
  • 小米SU7预估交付量2.45万台,小米15沦为牺牲品价比百元机让路
  • 一文读懂 KYC:金融、IT 领域的关键应用与实践
  • 《深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)》
  • 植物大战僵尸金铲铲版 v1.1.6(windows+安卓)
  • 云原生数据库砸了 K8S云自建数据库的饭碗--- CXL内存技术
  • vue图表插件ECharts使用指南
  • ListControl双击实现可编辑
  • virtualbox安装ubuntu,配置静态ip
  • easy云盘笔记
  • 服务器数据恢复—raid5阵列硬盘出现坏道导致上层应用崩溃的数据恢复案例