如何使用自动连接依赖的init-method?

时间:2016-01-26 15:45:59

标签: java spring dependency-injection

如果有一个bean使用init方法:

<bean id="myBean" class="com.test.MyBean" scope="prototype" init-method="init">

init-method:

public void init(MyBeanHolder holder) {
    this.myBean = holder.getMyBean();
}

问题是init方法没有自动装配bean。所以问题是如何将init与注入的依赖项一起使用?

2 个答案:

答案 0 :(得分:1)

在注入所有属性后调用init-method(或@PostConstruct)。 - 所以只需像其他所有依赖项一样注入MyBeanHolder holder,然后通过init

this.holder方法中使用它们

答案 1 :(得分:0)

尝试以下方法:

@Autowired
private MyBeanHolder holder;

public void init() {
    this.myBean = holder.getMyBean();
}

注入init后将调用MyBeanHolder方法。