TOP比較データ> Strutsを構成するコンポーネント




徹底比較!! PHP & Java 〜 フレームワーク編
徹底比較!! PHP & Java 〜 フレームワーク編

第2回:StrutsとMojaviのしくみを見てみよう
著者:ワイズノット  土橋 芳孝   2005/7/21
前のページ  1  2   3  4  次のページ
Strutsを構成するコンポーネント

   Strutsは数多くのコンポーネントから構成されています。その中でも主なものを取り上げて、以下に解説します。
ActionServlet

   Strutsを利用したWebアプリケーションでは、このActionServletが唯一のServletとなります。ActionServletはコントローラにあたるコンポーネントで、すべてのリクエストはこのActionServletが窓口となって受け付けます。ActionServletの役割は、Webアプリケーションの初期化と、受け取ったリクエストに応じて適切なRequestProcessorに処理を渡すことです。


RequestProcessor

   RequestProcessorは、各コンポーネントの連携を行うためのコントローラです。RequestProcessorでは、リクエストを下記のように処理します。

  1. リクエストに応じて適切なActionMappingを取得します
  2. 取得したActionMappingに関連づけられたセキュリティロールをチェックします
  3. リクエストに応じて適切なActionFormを取得します
  4. リクエストパラメータをActionFormに格納します
  5. 取得したActionMappingにforward属性が定義されている場合、フォワード処理を行います
  6. 取得したActionMappingにinclude属性が定義されている場合、インクルード処理を行います
  7. リクエストに応じて適切なActionを取得します
  8. 取得したActionを実行します
  9. 画面遷移のための処理を行います


ActionMapping

   ActionMappingは、Struts設定ファイルに記述された<action>要素の内容を保持します。開発者はプログラム中でActionMappingを参照することにより、Struts設定ファイルに記述された<action>要素の内容を取得することができます。


ActionForm

   ActionFormは、画面の値を保持するためのJavaBeansです。開発者はActionFormのサブクラスを作成する必要がありますが、DynaActionFormを利用する場合は、その限りではありません。


Action

   Actionはビジネスロジックの呼び出しを行い、その実行結果をRequestProcessorに返す役割を持っています。開発者はActionのサブクラスを作成する必要があります。


JSP

   JSPは、HTMLを生成するビューとしての役割を持っています。開発者はJSPを作成する必要があります。


Struts設定ファイル

   Struts設定ファイルは、Strutsを利用したWebアプリケーションの設定を行うためのファイルです。開発者は必要に応じてStruts設定ファイルを修正する必要があります。


Strutsの基本構造と動作の流れ

   それではStrutsの基本構造と動作の流れを見てみましょう。StrutsはMVCモデルに沿って下記のように動作しています。

Strutsの動作の流れ
図1:Strutsの動作の流れ

  1. Webブラウザに表示されているWebアプリケーションのボタンがおされると、そのリクエストをActionServletが受け取ります
  2. リクエストを受け取ったActionServletは、そのリクエストをRequestProcessorへ渡します
  3. リクエストを受け取ったRequestProcessorは、そのリクエストに対応したActionFormを生成し、Webブラウザより受け取った値をActionFormに格納します
  4. RequestProcessorは、リクエストに対応したActionMappingを呼び出します
  5. ActionはWebブラウザから受け取った値をActionFormより取得し、ビジネスロジックを実行します。ビジネスロジックを実行して得られた値は、必要に応じて適切なActionFormへ格納します
  6. RequestProcessorはActionの実行結果に応じて、次に遷移すべき画面を表示することができるJSPへ処理を渡します
  7. RequestProcessorから処理を渡されたJSPは、画面を表示するために必要な値をActionFormより取り出します
  8. JSPはHTMLをWebブラウザに表示します

前のページ  1  2   3  4  次のページ


ワイズノット
著者プロフィール
株式会社ワイズノット  土橋 芳孝
以前はJavaを利用したWebアプリケーション開発とオブジェクト指向設計を得意としていたが、ワイズノットに入社以来、PHPの魅力にとりつかれる。現在はワイズノットのプロジェクトマネージャーとして、PHPをはじめとしたオープンソースの普及に力を注いでいる。


INDEX
第2回:StrutsとMojaviのしくみを見てみよう
  Strutsのしくみ
Strutsを構成するコンポーネント
  Mojaviのしくみ
  Mojaviの基本構造と動作の流れ