spring是很强大的:把这几天学习的心得记录下来。
常用的有两种注入方式,set值注入,构造注入。
set注入的xml写法如下:
<bean id="chinese" class="Chinese">
<property name="name" value="wanger"/>
<property name="age" value="22"/>
<property name="food" ref="food"/>
</bean>
ref是引用到别的bean
<bean id="food" class="Food">
<constructor-arg index="0" value="cabbage"/>
<constructor-arg index="1" value="vegetables"/>
<constructor-arg index="2" value="2"/>
</bean>
构造注入如下:
<bean id="american" class="American">
<constructor-arg index="0" value="apple"/>
<constructor-arg index="1" value="23"/>
<property name="food" ref="food"></property>
</bean>
同样也用到了ref
注意ref="food"等价于ref bean="food" 不等价于ref local="food"
实例工厂方法实例化 要写两个bean配置 如下
<bean id="amn" class="InsServerBean"/>
<bean id="insServerBean" factory-bean="amn" factory-method="createInsBean">
<constructor-arg index="0" value="mm"></constructor-arg>
</bean>
静态工厂方法实例化 配置如下
<bean id="servBeanFactory" class="ServBeanFactory" factory-method="createBean">
<constructor-arg index="0" value="chinese"></constructor-arg>
</bean>
constructor-arg是传递参数用的。如果构造方法里用传参数的话。