在Spring中自动装配Bean的属性
作者:李灿辉 时间:2022-01-29 07:01:28
Spring的最基本的能力就是DI,即依赖注入,或控制反转,它可以为Bean注入其依赖的其他Bean。
一个Bean依赖其他Bean一般是通过在Bean中定义其他Bean的成员变量的方式来实现的,那么,Spring的DI也就表现为给Bean的属性自动注入值。
这一般分为以下其中情况。
1,自动注入基本类型。
自动注入基本类型,即当一个Bean有一些基本类型的属性时,例如String
,double
,int
等类型的属性时,我们可以在xml中自动为这些属性注入值。虽然这也成为自动注入的一种,但严格来讲,这种注入并不算是真正意义上的依赖注入,充其量算是一种初始化方式或赋值方式。就一个具有真实意义的可运行系统而言,依赖,主要指的是不同组件,不同类之间相互依赖,协作完成一项工作。从这个角度来讲,DI更应该指的是下面的第2种情况。
自动注入基本类型,通过property
标签的value属性来完成。
2,注入其他Bean类型的属性。
即如果一个Bean有另外一个Bean或者说类类型的成员变量,那么我们可以通过DI对该属性进行自动注入。这种情况应该算是真正意义上的自动注入。
注入其他Bean类型的属性,通过property标签的ref属性来完成。
3,注入List类型的属性。
如果一个Bean有一个List类型的属性,那么我们可以在xml中完成对它的注入。至于该属性是基本类型的list还是其他Bean的list,这里都可以支持。
4,注入map类型的属性。
如果一个Bean有一个Map类型的属性,那么我们可以在xml中完成对它的自动注入。
This is the end。
来源:https://blog.csdn.net/li_canhui/article/details/85223096
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Java中实现简单的Excel导出
![](https://img.aspxhome.com/file/2023/0/68730_0s.png)
解决javac不是内部或外部命令,也不是可运行程序的报错问题
![](https://img.aspxhome.com/file/2023/3/66623_0s.jpg)
C#推送信息到APNs的方法
Java SpringMVC框架开发之数据导出Excel文件格式实例详解
详解Mybatis框架SQL防注入指南
![](https://img.aspxhome.com/file/2023/6/66046_0s.jpg)
java 排序算法之快速排序
![](https://img.aspxhome.com/file/2023/4/69314_0s.png)
深入解析JVM之内存结构及字符串常量池(推荐)
![](https://img.aspxhome.com/file/2023/9/66469_0s.png)
Java实现发送手机短信语音验证功能代码实例
详解Java 信号量Semaphore
![](https://img.aspxhome.com/file/2023/7/69927_0s.png)
浅谈hibernate急迫加载问题(多重外键关联)
![](https://img.aspxhome.com/file/2023/2/65202_0s.png)
java实现简单快递系统
![](https://img.aspxhome.com/file/2023/8/69698_0s.jpg)
Java设计模式中的七大原则详细讲解
![](https://img.aspxhome.com/file/2023/5/66195_0s.png)
springmvc前台向后台传值几种方式总结(从简单到复杂)
使用flutter创建可移动的stack小部件功能
![](https://img.aspxhome.com/file/2023/0/57150_0s.gif)
java如何通过IP解析地理位置
![](https://img.aspxhome.com/file/2023/5/61535_0s.png)
java操作json对象出现StackOverflow错误的问题及解决
![](https://img.aspxhome.com/file/2023/2/63162_0s.png)
Spring Cloud详解实现声明式微服务调用OpenFeign方法
![](https://img.aspxhome.com/file/2023/3/68763_0s.png)
Java-String类最全汇总(下篇)
![](https://img.aspxhome.com/file/2023/7/58857_0s.jpg)
Java中mybatis的三种分页方式
![](https://img.aspxhome.com/file/2023/7/67607_0s.png)