ホームページ >Java >&#&チュートリアル >Spring MVC のプロセスは何ですか?
SpringMVC フレームワークはリクエスト駆動型の Web フレームワークであり、設計に「フロントエンド コントローラー」モデルを使用し、「リクエスト」に従ってそれを対応するページ コントローラーに配布します。処理用のマッピング ルール。
Spring MVC のプロセスとは何ですか?
全体プロセス:
1. まず、ユーザーがリクエストを送信します—>DispatcherServlet (フロントエンド コントローラー)、フロントエンド コントローラーはリクエストを受信します。その後、リクエストを自分自身で処理するのではなく、グローバル プロセス制御の統合アクセス ポイントとして、他のパーサーに処理を委任します。
2. DispatcherServlet——>HandlerMapping (プロセッサ マッパー)、HandlerMapping 要求は HandlerExecutionChain オブジェクト (ハンドラー プロセッサ (ページ コントローラー) オブジェクト、複数の HandlerInterceptor インターセプターを含む) オブジェクトにマップされます。この戦略モードを通じて、新しいマッピング戦略を簡単に追加できます。
3 、DispatcherServlet——>HandlerAdapter (プロセッサ アダプタ)。HandlerAdapter は、複数の種類のプロセッサをサポートするアダプタとしてプロセッサをパッケージ化します。つまり、アダプタ設計パターンのアプリケーションであり、多くの種類のプロセッサのサポートが容易になります。
4. HandlerAdapter——>プロセッサ関数の処理メソッドを呼び出します。HandlerAdapter は、適応結果に従って実際のプロセッサ関数の処理メソッドを呼び出して関数の処理を完了し、ModelAndView オブジェクト (モデル データを含む) を返します。 、論理ビュー名);
5. ModelAndView の論理ビュー名—> ViewResolver. ViewResolver は論理ビュー名を特定のビューに解析します。この戦略モデルを通じて、他のビュー テクノロジを簡単に置き換えることができます。 ;
6. ビュー—>レンダリング。ビューは、受信した Model モデル データに従ってレンダリングされます。ここでの Model は実際には Map データ構造であるため、他のビュー テクノロジーを簡単にサポートできます;
7. DispatcherServlet に制御を戻し、DispatcherServlet がユーザーに応答を返して処理は終了です。
コア プロセス:
1. フロントエンド コントローラー (DispatcherServlet) へのリクエストを開始します。
2. フロントエンド コントローラーは、HandlerMapping に Handler の検索を要求します (XML 設定とアノテーションに基づいて検索できます) 3. プロセッサ マッパー HandlerMapping は、Handler をフロントエンド コントローラーに返します。リクエストを HandlerExecutionChain オブジェクト (Handler プロセッサ (ページ コントローラー) オブジェクト、複数の HandlerInterceptor インターセプター オブジェクトを含む) にマップするこの戦略モードを通じて、新しいマッピング戦略を簡単に追加できます4. フロントエンド コントローラープロセッサ アダプタは、Handler5 を実行するためにプロセッサ アダプタを呼び出します。プロセッサ アダプタ HandlerAdapter は、適応結果に従って Handler を実行します6。Handler の実行が完了すると、ModelAndView がアダプタ#に返されます。##7. プロセッサ アダプタはフロントエンドを制御します コントローラは ModelAndView を返します (ModelAndView はモデルとビューを含む springmvc フレームワークの基礎となるオブジェクトです)
8. フロントエンド コントローラはビューを要求しますパーサーを使用してビュー解析 (論理ビュー名に基づいて実際のビュー (jsp) に解決) を実行すると、この戦略を通じて他のビュー テクノロジを簡単に置き換えることができ、ビュー リゾルバー
#9 を変更するだけです。フロントエンド コントローラーに View を返します10。フロントエンド コントローラーは View レンダリングを実行します (ビュー レンダリングにより、(ModelAndView オブジェクト内の) モデル データがリクエスト フィールドに埋められます)11。フロントエンド コントローラーはユーザーに結果を返します。[関連する推奨事項:Java チュートリアル
]以上がSpring MVC のプロセスは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。