Heim >Java >javaLernprogramm >Sollten Sie „ContextLoaderListener' in Spring-Webanwendungen aufgeben?
ContextLoaderListener Revisited
Die Standard-Spring-Webanwendung verwendet sowohl einen ContextLoaderListener als auch ein DispatcherServlet. Während Ersteres darauf ausgelegt ist, nicht webbezogene Konfigurationen zu laden, und Letzteres ausschließlich webbezogene Konfigurationen verarbeitet, stellt sich die Frage: Warum nicht das DispatcherServlet verwenden, um alle Konfigurationen zu laden, um die Komplexität mehrerer Kontexte zu vermeiden?
Gründe für mehrere Kontexte
In der Vergangenheit wurde die Verwendung beider Kontexte gefördert, um webbezogene Belange von nicht webbezogenen zu trennen. Diese Vorgehensweise bot Vorteile bei der gemeinsamen Nutzung von Diensten zwischen mehreren DispatcherServlets oder beim Zugriff auf Spring-Wired-Dienste über ältere Servlets. In Fällen jedoch, in denen diese Bedingungen nicht zutreffen, wie in der Frage vorgeschlagen, gibt es möglicherweise keinen zwingenden Grund, den Kontext auf Webanwendungsebene beizubehalten.
Begründung für die Entfernung
Die Entscheidung, den ContextLoaderListener zu entfernen, hängt letztendlich von den spezifischen Anwendungsanforderungen ab. Wenn jedoch keines der folgenden Szenarios zutrifft:
Dann kann das Entfernen des ContextLoaderListener und die ausschließliche Verwendung des DispatcherServlet die Anwendungsarchitektur vereinfachen und möglicherweise Probleme im Zusammenhang mit der kontextübergreifenden Ereignisbehandlung beheben.
Achtung
Wenn Sie die Entfernung des Kontexts auf Webanwendungsebene in Betracht ziehen, prüfen Sie sorgfältig die Auswirkungen auf Hintergrundaufgaben, wie z. B. geplante Aufgaben oder JMS-Verbindungen. Wenn der Implementierung ein
Das obige ist der detaillierte Inhalt vonSollten Sie „ContextLoaderListener' in Spring-Webanwendungen aufgeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!