Bei der Spring-Entwicklung kann es vorkommen, dass Abhängigkeiten in ein Objekt eingefügt werden müssen, das außerhalb von Spring instanziiert wurde Anwendungskontext. Im Gegensatz zu Google Guice, das eine injectMembers-Methode bietet, erfordert Spring einen differenzierteren Ansatz.
Autowiring-Abhängigkeiten
Um Abhängigkeiten manuell in ein selbstinstanziiertes Objekt in Spring einzufügen, Sie können die von der AutowireCapableBeanFactory bereitgestellte autowireBean-Methode verwenden. Mit dieser Methode können Sie ein beliebiges Objekt an Spring übergeben, das dann die Autowiring-Funktionalität anwendet und alle konfigurierten Abhängigkeiten einfügt.
Implementierung
Um diese Methode zu verwenden, befolgen Sie diese Schritte:
Beispiel
Betrachten Sie den folgenden Code:
<code class="java">@Autowired private AutowireCapableBeanFactory beanFactory; public void doStuff() { MyBean obj = new MyBean(); beanFactory.autowireBean(obj); // obj now has its dependencies autowired. }</code>
In diesem Beispiel wird MyBean manuell instanziiert, wird aber trotzdem injiziert Abhängigkeiten über die autowireBean-Methode.
Hinweis: Es ist wichtig sicherzustellen, dass das Zielobjekt den Spring-Bean-Konventionen entspricht, einschließlich der richtigen Klassenbenennung und dem Vorhandensein geeigneter Anmerkungen (z. B. @Component oder @Autowired), damit die Abhängigkeitsinjektion ordnungsgemäß funktioniert.
Das obige ist der detaillierte Inhalt vonHier sind einige Titeloptionen, die zur Frage passen: Direkt und klar: * Wie fügt man im Frühjahr Abhängigkeiten in selbstinstanziierte Objekte ein? * Spring Dependency Injection: Automatische Verdrahtung von Objekten außerhalb des. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!