0

http リクエスト応答内で実際に送信されるものは何ですか?

以下の単純なスプリング コントローラーでは、文字列がクライアントに送信されます。しかし、この文字列は、ブラウザが理解できるいくつかの html 要素でラップされていますか? この応答は常に同じですが、フレームワークが異なると、プロセスを簡素化するために便利なメソッド/注釈が異なるだけですか?

  @RequestMapping(value="myrequest", method = RequestMethod.GET)
  public String redirect(@RequestParam String param) {      

      return "test";

  }
4

1 に答える 1

0

Spring MVC Frameworkでは、HTTP リクエストのライフサイクルは次のようになります。

  1. ユーザーがリソースをリクエストすると、Spring はDispatcherServletそのリクエストを特定のコントローラー メソッド ( など) に委任しredirectます。@RequestMappingこれは、適切なものを選択するためにコントローラ内の注釈 ( など) を使用できるハンドラ マッピングによって行われます。

  2. 通常、Controllerメソッドは ModelAndViews のインスタンスを返します。これは、何らかのマークアップ (HTML、JSON、XLS 別名ビュー) の生成を担当するクラスであり、そのビュー (モデル) にいくつかの情報を表示します。また、コントローラーがビューの論理名 ( などtest) を返すことも可能です。これは、後でビュー リゾルバーによって ModelAndView インスタンスのリゾルバーになる必要があります。

  3. ビュー リゾルバーは、コントローラーから返された論理名に基づいて適切なビューを選択し、ビューはブラウザーに送信されるマークアップを生成します。たとえば、JstlView は HTML マークアップを生成し、AbstractExcelView は XLS ファイルを生成します。

したがって、あなたの質問に答えるには、アプリケーション コンテキストでどの View Resolver が構成されているかを見つけ、どのマークアップが生成されるかを見つける必要があります。

于 2012-12-01T00:21:05.393 に答える