Spring 连接没有bean名称的属性?

Spring 连接没有bean名称的属性?,spring,Spring,如果可能的话,我需要在不使用bean id的情况下连接给定对象的属性。自动关联不起作用,因为属性的类型是Object,因此根本不特定。是否有一种按类或接口自动连线的方法,如下所示: <bean class="NonSpecificClassThing"> <property name="targetObject"> <a:wire-by-type type="com.things.MyInterface"/> </prop

如果可能的话,我需要在不使用bean id的情况下连接给定对象的属性。自动关联不起作用,因为属性的类型是
Object
,因此根本不特定。是否有一种按类或接口自动连线的方法,如下所示:

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

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


这样做可能吗?

显然你可以这样做:

目标类别:

public class NonSpecificClassThing {

      private Object targetObject;

      // do something;

      public getTargetObject() {
         return targetObject;
      } 

      public void setTargetObject(Object targetObject) {
         this.targetObject = targetObject;
      }
}
spring上下文:

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

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


它们引用的是同一个对象?您能提供一个链接来说明其工作原理吗?例如,如果
com.things.MyInterfaceImpl
bean的配置更高,该怎么办?@TK Kocheran我已经编辑了我的答案。你说的更多配置是什么意思?把另一颗豆子注射进去?