SAStrutsのアノテーション

SAStrutsの覚えるべき基本のアノテーション
・@ActionForm
・@Execute
・@Resource

@ActionForm

Actionクラスで利用するFormクラスの設定をするアノテーション
下記のようにActionクラス内で宣言する。

@ActionForm
@Resource
protected AbcForm abcForm;

Formのメンバ変数名には、決まりがあり、XxxxFormの場合”xxxxForm”という、
変数名にする必要がある。

「form」パッケージの配下に「XxxxForm」という命名規約のクラスを作成すると、
Formクラスとして認識される。

@Execute

実行メソッドにつけるアノテーション
実行メソッドの定義→@Executeがついていて、戻り値はString(遷移先のパス)、引数は無し

urlPattern属性
@ExecuteでURLのパターン(urlPattern)を指定することで、
URLがパターンに一致したときにそのメソッドが呼び出される

@Resource

DIされるメンバ変数とリクエストからマッピング対象となり得るメンバ変数を正しく処理する。
詳しく言うと、@ActionFormが宣言されていない場合、
Actionクラス自体のpublicなメンバにリクエストのパラメータが
セットされる仕組みになっている。
よって、セットされたくないメンバに対して値がセットされ、
誤作動をしてしまうので、それを防ぐため。