DispatcherServlet

3798 ワード

1. DispatcherServlet


DispatcherServiceletはSpring MVCフレームワークの中心です。


DispatcherServiceletはWebブラウザの要求を受信し、DispatcherServiceletは関連コンポーネントを使用してWebブラウザの要求を処理し、結果を送信します.
DispatcherServiceletに他の初期化パラメータがない場合、
[サーバ名]-servletは、Webアプリケーションの/WEB-INF/ディレクトリにあります.xmlファイルを使用してスプリングコンテナを生成します.
1つ以上の設定ファイル、または名前が「名前」-servletである必要があります.xml形式以外のファイルを使用するには、次のようにコンフィギュレーション・ファイルのリストをContextConfigLocation初期化パラメータとして指定する必要があります.
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>
	org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<init-param>
	<param-name>contextConfigLocation</param-name>
    <param-value>
    	/WEB-INF/main.xml
        /WEB-INF/sub.xml
        classpath:/common.xml
    </param-value>
</init-param>
</servlet>
各設定ファイルのパスは、Webアプリケーションのルートディレクトリに基づいており、「file:」または「classpath:」接頭辞を使用してローカルファイルまたはクラスパスにあるファイルにアクセスできます.
マッピングされたハンドルが存在しない場合は、次の空の設定でリクエストを処理します.
  • 2.Root ContextとサーブレットContext


    Springコンテナ=IoC Container=Application Context

    以下は、Root ContextとサーブレットContextが登録されているWebです.xmlファイル.
    💬 通常、Root Contextはcontext-です.xmlの使用
    サーブレットContextは-servletです.xmlで名前を付けます.

    2.1. Root Context


    主にデータのクエリーと処理を担当するサービス、データベースのbeanの設定についてです.
    また、Root Contextに登録されている空は、すべてのContextで共有できます.

    2.2. Servlet Context


    サーブレット構成に必要なコントローラ、View Resolver、HandleMappingなどのWeb関連beanの設定が含まれています.
    サーブレットContextに登録されている空は、サーブレットContextでのみ使用されます.

    (Context Hierarchy ref.https://docs.spring.io/spring/docs参照)