<!-- person has a property type of class "ability" --> <bean id="person" class="com.h3.common.person" autowire="bytype" /> <bean id="invisible" class="com.h3.common.ability" > <property name="skill" value="invisible" /> </bean>
package com.h3.common; public class person { private ability ability; //... }
package com.h3.common; public class ability { private string skill; //... }
<bean id="person" class="com.h3.common.person"> <property name="ability" ref="invisible" /> </bean> <bean id="invisible" class="com.h3.common.ability" > <property name="skill" value="invisible" /> </bean>
输出
person [ability=ability [skill=invisible]]
<bean id="person" class="com.h3.common.person" autowire="bytype" /> <bean id="invisible" class="com.h3.common.ability" > <property name="skill" value="invisible" /> </bean>
输出
person [ability=ability [skill=invisible]]
<bean id="person" class="com.h3.common.person" autowire="bytype" /> <bean id="steal" class="com.h3.common.ability" > <property name="skill" value="steal" /> </bean> <bean id="invisible" class="com.h3.common.ability" > <property name="skill" value="invisible" /> </bean>
输出
exception in thread "main" org.springframework.beans.factory.unsatisfieddependencyexception: ... no unique bean of type [com.h3.common.ability] is defined: expected single matching bean but found 2: [steal, invisible]; nested exception is org.springframework.beans.factory.nosuchbeandefinitionexception: no unique bean of type [com.h3.common.ability] is defined: expected single matching bean but found 2: [steal, invisible]