Diciamo che abbiamo una classe:Come iniettare dipendenze in un oggetto auto-istanziato in primavera?
public class MyClass {
@Autowired private AnotherBean anotherBean;
}
Poi abbiamo creato un oggetto di questa classe (o qualche altro quadro hanno creato l'istanza di questa classe).
MyClass obj = new MyClass();
E 'possibile iniettare ancora le dipendenze? Qualcosa di simile:
applicationContext.injectDependencies(obj);
(penso Google Guice ha qualcosa di simile)
Buona risposta (+1). C'è anche un secondo metodo in cui puoi influenzare il modo in cui avviene l'autowiring: http://static.springsource.org/spring/docs/3.0.x/javadoc-api/org/springframework/beans/factory/config/AutowireCapableBeanFactory.html# autowireBeanProperties% 28java.lang.Object,% 20int,% 20boolean% 29 –
Ma cosa succede se ho due oggetti e il primo secondo autowires. In che modo la fabbrica di fagioli autowire tratta le dipendenze nel caso? –
Questo è in realtà un cattivo schema. Se questo è il modo in cui usi veramente MyBean, perché non solo avere il costruttore con AnotherBean come parametro. Qualcosa come: 'code' private @Autowired AnotherBean bean; public void doStuff() {MyBean obj = new MyBean (bean); } 'codice'. Sembra essere come in tutte queste annotazioni, le persone si sentono davvero confuse e non usano il modello di base che era presente nell'SDK di java dal giorno 1. :( – Denis