连接没有bean名称的属性?

时间:2012-07-27 18:43:12

标签: spring

如果可能的话,我需要连接给定对象的属性而不使用bean id。自动装配不起作用,因为属性的类型是Object,因此根本不具体。有没有办法通过类或接口自动装配:

<bean class="NonSpecificClassThing">
    <property name="targetObject">
        <a:wire-by-type type="com.things.MyInterface"/>
    </property>
</bean>

<bean class="com.things.MyInterfaceImpl"/>

这样的事情可能吗?

1 个答案:

答案 0 :(得分:1)

显然你可以这样做:

目标类:

public class NonSpecificClassThing {

      private Object targetObject;

      // do something;

      public getTargetObject() {
         return targetObject;
      } 

      public void setTargetObject(Object targetObject) {
         this.targetObject = targetObject;
      }
}

春天背景:

<bean class="NonSpecificClassThing">
    <property name="targetObject">
        <ref bean="com.things.MyInterfaceImpl"/>
    </property>
</bean>

<bean class="com.things.MyInterfaceImpl"/>