Como autowire bean no mesmo bean
Eu gostaria de recuperar a instância do bean A para a mesma instância de A. Como posso conseguir isso com anotação (sem XML).
Exemplo:
@Service
public class A {
@Autowire
A a;
}
Eu também tentei
@Service
public class A {
A a;
@Autowired
public void setA(final A a) {
this.a = a;
}
}
mas não está funcionando também: - /
Configuração usando XML como
<bean id="a" class="A">
<property name="a" ref="a" />
</bean>
funciona bem. E também é possível usar
@Service
public class A implements InitializingBean {
A a;
@Autowired
ApplicationContext ctx;
@Override
public void afterPropertiesSet() throws Exception {
a = ctx.getBean(A.class);
}
}
mas isso é complicado. O estranho é que Spring pode lidar com isso ao usar a configuração XML, mas não ao usar uma baseada em anotação.