ContextLoaderListener
私はそれをグーグルで検索しましたが、満足のいく答えが見つかりませんでした.との違いを説明していただければ幸いですRequestContextListener
.
4 に答える
contextloaderlistener :- Spring のルート WebApplicationContext を起動するためのブートストラップ リスナー。ContextLoader に委譲するだけです。
requestcontextlistener :-このリスナーは主に、JSF FacesServlet などのサードパーティのサーブレットで使用するためのものです。Spring 独自の Web サポート内では、DispatcherServlet の処理で十分です。
Servlet 2.5 Web コンテナーを使用し、リクエストが Spring の DispatcherServlet の外部で処理される場合 (たとえば、JSF または Struts を使用する場合)、org.springframework.web.context.request.RequestContextListener ServletRequestListener を登録する必要があります。Servlet 3.0+ の場合、これは WebApplicationInitializer インターフェイスを介してプログラムで実行できます。または、古いコンテナーの場合は、Web アプリケーションの web.xml ファイルに次の宣言を追加します。
<listener> <listener-class> org.springframework.web.context.request.RequestContextListener </listener-class> </listener> </web-app>
ContextLoaderListener は、Spring のルート WebApplicationContext を起動するためのブートストラップ リスナーです。
RequestContextListener は、リクエスト スレッドの属性を存続させたい場合に使用されます。
ここで注意すべき点は、RequestContextListener で継承可能フラグが false に設定されていることです。
したがって、子スレッドにリクエスト属性を継承させたい場合は、RequestContextFilter または RequestContextHolder を使用してみてください。