spring-setter方式注入
被依赖的对象对象的创建无需早于需要依赖的对象,例如
假设有2个类
构造器注入:
<bean name ="simpleA" class="类的路径名字"/>
<constructor-arg name="model里面的成员变量" value="成员变量的赋值操作">
<constructor-arg name="变量1" value="我是变量1"/>
<constructor-arg name="变量2" value="我是变量2"/>
spring配置中property作为bean的属性。也就是指一个类中的成员。同时这个成员必须有get和set方法。
下面的simpleB依赖的与simpleA,那么需要在construction-arg ref属性中设置依赖的类在ioc容器中的名字; 以下为设值注入
<bean name="simpleB" class="类的全名 ——coplylified name">
<property name = "依赖的成员对象" ref="simpleA"/>
<property name = "我是成员变量"> value="设置注入”>
阐述作用:
simpleA对象是 一个类的实例,其通过构造器方式实例化。simpleB通过配置peroperty元素来调用setter方式以设置值。需要注意的是simpleB属性配置的是simpleA对象的引用
构造器注入
其中必须要有对应的构造器
这里涉及构造器的重载,一定要和类型匹配上
1、通过成员变量名匹配
<bean name ="simpleA" class="类的路径名字"/>
<constructor-arg name="model里面的成员变量" value="成员变量的赋值操作">
<constructor-arg name="变量1" value="我是变量1"/>
<constructor-arg name="变量2" value="我是变量2"/>
2、通过指数方式匹配
<bean name ="simpleA" class="类的路径名字"/>
<constructor-arg index="0" value="成员变量的赋值操作">
<constructor-arg index="1" value="我是变量1"/>
<constructor-arg index="2" value="我是变量2"/>
value值必须和设置的构造器的类型匹配上,否则会报错;当采用这种方式进行传值的时候,所有对应的参数必须全部设置
本文详细介绍了Spring框架中依赖注入的概念及使用方法,包括构造器注入和setter注入两种方式,并通过具体的XML配置示例展示了如何实现依赖关系的管理。
1856

被折叠的 条评论
为什么被折叠?



