Die Hauptforschung in diesem Artikel besteht darin, alle Bohnen mit spezifischen Anmerkungen nach dem Beginn des Frühlings wie folgt zu erhalten.
Vor kurzem habe ich ein Geschäftsszenario im Projekt gestoßen, um alle Bohnen zu erhalten, die ein bestimmtes Schnittstellenobjekt in allen Bohnen nach dem Start des Frühlingsbehälters implementieren. Das erste, woran ich dachte, ist applicationContextaware. Im setApplicationContext habe ich alle Bohnen durch CTX bekommen. Später stellte ich fest, dass die Logik falsch schien. Diese Methode wurde nicht implementiert, nachdem alle Bohnen initialisiert wurden. Später versuchte ich es, um zu sehen, ob es Hörer und dergleichen gab, und fand eine gute Sache ApplicationListener, und dann verwendete Baidu ApplicationListener. Es stellte sich heraus, dass es viele Beispiele gab, also werde ich meine Beispiele aufzeichnen.
Es ist sehr einfach. Implementieren Sie einfach ApplicationListener<ContextRefreshedEvent> . Der Code ist wie folgt:
@Component public class contextreFreshedListener implementiert ApplicationListener <contextreFreshedEvent> {@Override public void OnapplicationEvent (contextreFreshedEvent Ereignis) {// Der Root Container ist ein Frühlingscontainer if (Ereignis. Event.GetApplicationContext (). getBeanWithannotation (ImoBile.Class); für (Objektbean: bean.values ()) {System.err.println (bean == null? "null": bean.getClass (). Unter ihnen werden alle Beans -Kollektionen mit spezifischen Anmerkungen über event.getApplicationContext().getBeansWithAnnotation und dann alle Bohnen durch die Implementierung von Geschäftsszenarien durchführen.
Zusammenfassung und Gedanken: Eine solche Funktion kann Systemparameter initialisieren, eine Liste des gesamten Schnittstellendienstes im System und andere Funktionen erhalten, die nach Beginn des Frühlings initialisiert werden müssen.
Lassen Sie uns verlängern: Zusätzlich zu den oben genannten Ereignissen nach dem Start gibt es drei weitere Ereignisse
Geschlossen wird beim Schließen des Behälters aufgerufen, gestartet wird aufgerufen, wenn der Container gestartet wird, und gestoppt wird aufgerufen, wenn der Behälter geschlossen ist.
Ich fing an und blieb durch Tomcatserver an und sah nur erfrischt und geschlossen. Ich weiß nicht warum, also werde ich weiter studieren, wenn ich Zeit habe.
Das obige ist der gesamte Inhalt dieses Artikels über die Erlangung aller Bean -Instanzcodes mit spezifischen Anmerkungen nach dem Beginn des Frühlings. Ich hoffe, es wird für alle hilfreich sein. Interessierte Freunde können weiterhin auf andere verwandte Themen auf dieser Website verweisen. Wenn es Mängel gibt, hinterlassen Sie bitte eine Nachricht, um darauf hinzuweisen. Vielen Dank an Freunde für Ihre Unterstützung für diese Seite!