|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 必須 | オプション | 詳細: 要素 |
@Target(value=METHOD) @Retention(value=RUNTIME) public @interface Function
ストアドファンクションの呼び出しを示します。
このアノテーションが注釈されるメソッドは、Dao
が注釈されたインタフェースのメンバでなければいけません。
注釈されるメソッドは、次の制約を満たす必要があります。
Domain
の実装クラスである。
In
、 InOut
、 Out
、
ResultSet
のいずれかのアノテーションが必須である。これらは、ストアドファンクションの定義に合わせて注釈しなければいけない。
void
、Domain
の実装クラス、Domain
の実装クラスを要素とする。
List
、 Entity
が注釈されたインタフェースを要素とする List
のいずれかである。戻り値を
List
にできるのは、ストアドファンクションがカーソルをOUTパラメータとして返す場合のみである。
@Dao(config = AppConfig.class) public interface EmployeeDao { @Function BigDecimalDomain getSalary(@In IntegerDomain id, @Out StringDomain name); }注釈されるメソッドは、次の例外をスローすることがあります。
DomaNullPointerException
パラメータに null
を渡した場合
JdbcException
JDBCに関する例外が発生した場合
In
,
InOut
,
Out
,
ResultSet
任意要素の概要 | |
---|---|
String |
catalog
カタログ名です。 |
String |
name
ストアドファンクションの名前です。 |
int |
queryTimeout
クエリタイムアウト(秒)です。 |
String |
schema
スキーマ名です。 |
public abstract String catalog
public abstract String schema
public abstract String name
指定しない場合、注釈されたメソッドの名前が使用されます。
public abstract int queryTimeout
指定しない場合、Config.queryTimeout()
が使用されます。
Statement.setQueryTimeout(int)
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 必須 | オプション | 詳細: 要素 |