这里是从这里发布一些代码,这可以解释我的问题:弹簧3依赖注入和接口
接口:
package org.better.place
public interface SuperDuperInterface{
public void saveWorld();
}
实现:
package org.better.place
import org.springframework.stereotype
public class SuperDuperClass implements SuperDuperInterface{
public void saveWorld(){
System.out.println("Done");
}
}
客户:
package org.better.place
import org.springframework.beans.factory.annotation.Autowire;
public class SuperDuperService{
private SuperDuperInterface superDuper;
public void doIt(){
superDuper.saveWorld();
}
public void setSuperDuper(SuperDuperInterface superDuper) {
this.superDuper = superDuper;
}
}
我的问题是 - 我如何在spring配置中配置bean?我不想使用@Autowired
和其他注释。
我想这会是这样的:
<bean id="superService" class="org.better.place.SuperDuperService">
<property name="superDuper" ref="superWorker"
</bean>
<bean id="superWorker" class=?????? parent=???????? >
</bean>
的
superDuper
场我看不出有什么可以让Spring自动注入'SuperDuperClass'实例的'SuperDuperService'不使用'@Autowired '在里面(OP想要避免)。 – zagyi,除非你明确地说@Autowired或在xml spring中提到auto-wire不自动连线。我在这里试图解释的是避免父标签,因为spring会发现它是否可以分配实例 – sanbhat
是的,这就是我的意思。它们都不在问题的代码片段中,所以不明白为什么你写了这样的话:“Spring会自动查找它是否可以将SuperDuperClass的实例分配给SuperDuperService的superDuper字段” – zagyi