class="com.springinaction.service.training.studentService"/>
容器赋给courseService Bean 一个studentService实例,这样courseServiceImpl就不用自己寻找studentService了
内部 bean:
<bean id="courseService"
class="com.springinaction.service.training.CourseServiceImpl"/>
<property name="studentService">
<bean class="com.springinaction.service.training.StudentServiceImpl"/>
</property>
</bean>
Spring注入(5)
时间:2011-01-27
这种装配引用的方式的缺点是你无法在其他地方重用这个StudentServiceImpl实例,因为它是一个专门为courseService Bean建立的实例。
装配集合:
List
<property name="barList">
<list>
<value>bar1</value>
<ref bean="bar2">
</list>
</property>
Set
<property name="barSet">
<set>
<value>bar1</value>
</set>
</property>
Map
<property name="barMap">
<map>
<entry key="key1">
<value>bar1</value>
</entry>
<entry key="key2">
<ref bean="bar2">
</entry>
</map>
</property>
Properties
<property name="barProps">
<props>
<prop key="key1">bar1</prop>
<prop key="key2">bar2</prop>
</props>
</property>
集合的装配就完了
下面就讲构造函数的注入
<bean id="foo"
class="com.sprininaction.Foo">
<constructor-arg>
<value> 50</value>
</constructor-arg>
</bean>
有两种方法来处理构造函数的不确定:
序号和类型
<bean id="foo"
class="com.sprininaction.Foo">
<constructor-arg index="1">
<value> ...</value>
</constructor-arg>
<constructor-arg index="0">
<value> ...</value>
</constructor-arg>
</bean>
<bean id="foo"
class="com.sprininaction.Foo">
<constructor-arg type="java.lang.String">
<value>Spring</value>
</constructor-arg>
<constructor-arg type="java.lang.int">
<value> 30</value>
</constructor-arg>
</bean>
end
|