[Seasar-user:1146] Re: 四択クイズ:ARGSアノテーションに関して

Yasuo Higa higa
2004年 11月 5日 (金) 18:25:06 JST


<[E-MAIL ADDRESS DELETED]> の、
   "[Seasar-user:1145] 四択クイズ:ARGSアノテーションに関して" において、
   "Hideaki Maekawa <[E-MAIL ADDRESS DELETED]>"さんは書きました:

ひがです。

> 前川です。
> 
> どこに投げるか迷ったのですが、とりあえずMLに。
> 
> S2DaoExerciseをしていたら、以下の食い違いを発見してしまいました。
> #ドキュメントの方が正解だったような…
> 
動的なSQL文を自動生成させる場合で、引数がEntityやDTOでない場合には、
カラム名を指定する必要があります。

が正解かなぁ。
> ---ドキュメントより
> ARGSアノテーション
> 
> メソッドの引数をSQL文で参照できるように、ARGSアノテーションを使用し、
> メソッドの引数名を指定します。メソッドの引数名は、リフレクションで取得
> できないためです。ARGSアノテーションは以下の形式で定数を宣言します。
> 
> - public static final String メソッド名_ARGS = "引数名";
> 
> ---S2DaoExerciseの解説
> 問題2
> 
> 【解説】ARGSアノテーションは以下の形式で宣言します。"テーブルのカラム
> 名"にはメソッドの引数名ではなく、引数に対応するテーブルのカラム名を指
> 定することに注意してください。また、引数が1つの場合、ARGSアノテーショ
> ンは省略することが可能ですが、明示的に指定することを推奨します。
> 
> - public static final String メソッド名_ARGS = "テーブルのカラム名";
> 
> 1.はメソッドの引数名を指定しているので間違いです。
> 3.は定数名がARGS_メソッド名となっているので間違いです。
> 4.はテーブルのカラム名が定数名で、メソッド名_ARGSが定数値になっているので間違いです。 
---
Yasuo Higa <[E-MAIL ADDRESS DELETED]>
INFORMATION SERVICES INTERNATIONAL-DENTSU,LTD.



Seasar-user メーリングリストの案内