1.通过构造函数的方式进行注入
标签属性:
type:用于指定注入的数据的类型,改数据类型也是构造函数中某个参数的类型
index:用于指定注入的数据在构造函数中指定索引位置的参数赋值,从0开始
name:用于指定给构造函数中指定名称的参数赋值
============常用的方式===============
value:用于提供基本类型和String类型的数据
ref:用于指定其他bean类型数据,指定是在spring的Ioc和兴容器中出现过的bean对象
优势:所有的构造函数的参数必须每个值都有
弊端:有的非必填参数也要一并初始化
<bean id="service" class="com.lsw.service">
<constructor-arg name="age" value="18"></constructor-arg>
<constructor-arg name="birthday" value="now"></constructor-arg>
</bean>
<bean id="now" class="java.util.Date">
2.通过set方法进行注入
标签属性:
name:用于指定注入时所调用的set方法名称
value:用于提供基本类型和String类型的数据
ref:用于指定其他bean类型数据,指定是在spring的Ioc和兴容器中出现过的bean对象
优势:创建对象是没有明确的限制,可以直接使用默认构造函数
弊端:如果某个成员是必须值,则获取对象 是可能set方法没有执行
<bean id="service" class="com.lsw.service">
<property name="方法名" value="test"></property>
<property name="方法名1" value="test"></property>
</bean>
<bean id="now" class="java.util.Date">