spring boot的自动装配原理

spring boot的自动装配原理

解释和使用

自动装配是什么:自动将第三方组件的bean装载到ioc容器里,不需要开发人员再去写bean相关的一些配置

spring boot怎么做:在启动类上加@SpringBootApplication注解就可以实现自动装配

@SpringBootApplication是什么:是一个复合注解,其中真正实现自动装配的注解是@EnableAutoConfiguration

关键技术思想

实现自动装配主要的3个核心技术:

  1. 配置声明。引入starter启动依赖组件的时候,这个组件里面要包含一个@Configguration注解的配置类,在这个配置类里面要通过@Bean注解去声明需要装配到ioc容器里面的对象。
  2. 约定优于配置。这个配置类是放在第三方的jar包里面,然后通过spring boot中约定优于配置的理念,去把这个配置类的全路径放在一个文件里面,这样就知道了所有需要加载的配置的位置,这个步骤是SpringFanctoryLoader来完成的。
  3. 动态加载。拿到所有配置类之后,再通过spring提供的ImportSelector接口来实现对这些配置类的动态加载,从而完成自动装配动作。

总结

总结:自动装配是在约定大于配置这样的思想下的实现,这也是spring boot的主要思想之一,这个思想让开发人员可以更加关注于要实现的业务,而不是繁琐的配置

相关推荐
blammmp11 分钟前
Java:数据结构-枚举
java·开发语言·数据结构
暗黑起源喵29 分钟前
设计模式-工厂设计模式
java·开发语言·设计模式
WaaTong34 分钟前
Java反射
java·开发语言·反射
齐 飞1 小时前
MongoDB笔记01-概念与安装
前端·数据库·笔记·后端·mongodb
狂放不羁霸1 小时前
idea | 搭建 SpringBoot 项目之配置 Maven
spring boot·maven·intellij-idea
九圣残炎1 小时前
【从零开始的LeetCode-算法】1456. 定长子串中元音的最大数目
java·算法·leetcode
wclass-zhengge1 小时前
Netty篇(入门编程)
java·linux·服务器
LunarCod1 小时前
WorkFlow源码剖析——Communicator之TCPServer(中)
后端·workflow·c/c++·网络框架·源码剖析·高性能高并发
计算机学长felix2 小时前
基于SpringBoot的“校园交友网站”的设计与实现(源码+数据库+文档+PPT)
数据库·spring boot·毕业设计·交友
Re.不晚2 小时前
Java入门15——抽象类
java·开发语言·学习·算法·intellij-idea