学习java第七十一天

DI:依赖注入

依赖注入是spring容器中创建对象时给其设置依赖对象的方式,比如给spring一个清单,清单中列出了需要创建B对象以及其他的一些对象(可能包含了B类型中需要依赖对象),此时spring在创建B对象的时候,会看B对象需要依赖于哪些对象,然后去查找一下清单中有没有包含这些被依赖的对象,如果有就去将其创建好,然后将其传递给B对象;可能B需要依赖于很多对象,B创建之前完全不需要知道其他对象是否存在或者其他对象在哪里以及被他们是如何创建,而spring容器会将B依赖对象主动创建好并将其注入到B中去,比如spring容器创建B的时候,发现B需要依赖于A,那么spring容器在清单中找到A的定义并将其创建好之后,注入到B对象中。

spring 自动装配 bean 有哪些方式

根据名称自动装配(byName):Spring容器会根据Bean的名称自动将相应的依赖注入到需要的地方。在XML配置中,可以使用autowire="byName"来启用byName自动装配。

根据类型自动装配(byType):Spring容器会根据Bean的类型自动将相应的依赖注入到需要的地方。在XML配置中,可以使用autowire="byType"来启用byType自动装配。

构造函数自动装配(constructor):Spring容器会根据构造函数的参数类型自动将相应的依赖注入到构造函数中。在XML配置中,可以使用autowire="constructor"来启用构造函数自动装配。

自动装配注解(Autowired):通过在需要自动装配的字段、构造函数或方法上使用@Autowired注解,Spring容器会自动将相应的依赖注入到标注了@Autowired的位置。

相关推荐
天青色等烟雨..15 分钟前
全流程ArcGISPro空间分析、三维建模、可视化及Python融合应用技术
开发语言·python
丰锋ff22 分钟前
1.2 Qt常用基础类型
开发语言·qt
AOwhisky23 分钟前
Python 学习笔记(第十三期)——运维自动化(下·前篇):远程命令执行——paramiko基础篇
运维·python·学习·云原生·自动化·运维开发·paramiko
前端双越老师32 分钟前
如何以前端视角(非0基础)学 Java ?
java·node.js·全栈
前端世界34 分钟前
MySQL 基础入门(学习第4天)——约束与 DML 操作详解
数据库·学习·mysql
dear_bi_MyOnly37 分钟前
【SpringBoot配置文件】
java·spring boot·后端·学习·spring·java-ee·学习方法
AOwhisky1 小时前
Python 学习笔记(第十四期)——运维自动化(下·中篇):远程文件传输——paramiko进阶篇
运维·python·学习·云原生·自动化·文件传输·paramiko
做个文艺程序员1 小时前
Linux第22篇:用Docker容器化你的Java SaaS应用:一次构建,随处运行
java·docker·容器
冰暮流星1 小时前
javascript之String方法介绍
开发语言·javascript·ecmascript
math_hongfan1 小时前
鸿蒙Flutter setState机制深入理解
学习·flutter·华为·harmonyos·鸿蒙