ContextLoaderListener または DispatcherServlet を使用する理由
多くの Spring Web アプリケーションは、web.xml 構成で ContextLoaderListener と DispatcherServlet の両方を使用します。ただし、DispatcherServlet だけに依存するのではなく、なぜこの二重のアプローチが採用されるのか不思議に思う人もいるかもしれません。
ContextLoaderListener と DispatcherServlet の理論的根拠
通常、ContextLoaderListener はロードを担当します。アプリケーション全体の非 Web 固有の構成 (データベース接続、サービス Bean など)。対照的に、DispatcherServlet は Web 関連の構成 (コントローラー、ビューなど) を処理します。この分離により、親コンテキスト (ContextLoaderListener によってロードされる) と子コンテキスト (DispatcherServlet によってロードされる) という 2 つのコンテキストが生成されます。
両方を使用する利点
このアーキテクチャには次のような特徴があります。これは歴史的にさまざまな理由で有益であると考えられてきました。
代替アプローチ: ContextLoaderListener を省略します
ContextLoaderListener と DispatcherServlet の両方を使用することには利点がありますが、簡略化されたアプローチを検討する価値があります。 ContextLoaderListener を削除し、DispatcherServlet 内のすべての Spring 設定をロードすることで、2 つのコンテキスト間の潜在的な競合が排除されます。
ContextLoaderListener を削除することは良い考えですか?
ContextLoaderListener を省略するかどうかの決定は、アプリケーションの特定の要件によって異なります。アプリケーションが上記の利点を必要としない場合は、ContextLoaderListener を削除すると構成が簡素化され、コンテキスト関連の問題が軽減される可能性があります。
注意: ContextLoaderListener を削除する場合は、次のことを確認してください。バックグラウンド タスクまたは JMS 接続はすべて
以上がContextLoaderListener を使用する必要がありますか、それとも DispatcherServlet をそのまま使用する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。