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的主要思想之一,这个思想让开发人员可以更加关注于要实现的业务,而不是繁琐的配置

相关推荐
慧一居士19 分钟前
ThreadLocal 功能及使用场景介绍,使用详解
java
zh731437 分钟前
typephp的编译核心phpx原理解析
android·java·开发语言
2401_894915533 小时前
GEO 优化源码全解析:从搜索引擎到 AI 引擎的底层改写逻辑
java·服务器·前端·数据库·人工智能·分布式·搜索引擎
suaizai_4 小时前
Fastjson高危漏洞紧急修复指南
spring boot
Java牛马7 小时前
SpringBoot Starter 依赖相关总结
java·spring·springboot·starter·自动装配·依赖
吴声子夜歌7 小时前
Java面试——Spring Cloud原理及应用(二)
java·spring cloud·面试
SomeB1oody7 小时前
【RustyML入门】6.3. 并行归约
开发语言·后端·机器学习·rust·教程
东小西8 小时前
【SAA实战】第 1 篇:ReactAgent 入门——先撸个"会调工具的助手"跑起来
java·人工智能·spring
Profile排查笔记8 小时前
指纹浏览器哪个好?从 Profile、代理、权限和自动化能力判断是否适合
前端·人工智能·后端·自动化
用户938515635078 小时前
用 AI 结对编程从 0 搭一个"单词后台管理系统":Next.js + Supabase + Drizzle + shadcn/ui 全记录
后端·postgresql·next.js