org.seasar.doma
注釈型 Function


@Target(value=METHOD)
@Retention(value=RUNTIME)
public @interface Function

ストアドファンクションの呼び出しを示します。

このアノテーションが注釈されるメソッドは、Daoインタフェースのメンバでなければいけません。 注釈されるメソッドは、次の制約を満たす必要があります。

例:
 @Dao(config = AppConfig.class)
 public interface EmployeeDao {
 
     @Function
     BigDecimal getSalary(@In Integer id, @Out Reference<String> name);
 }
 
注釈されるメソッドは、次の例外をスローすることがあります。

作成者:
taedium
関連項目:
In, InOut, Out, ResultSet

任意要素の概要
 String catalog
          カタログ名です。
 boolean ensureResultMapping
          結果がエンティティやエンティティのリストの場合、エンティティのすべてのプロパティに結果セットのカラムがマッピングされることを保証します。
 MapKeyNamingType mapKeyNaming
          結果セットを @code{Map} もしくは @code{List>} として取得する場合のマップのキーに対するネーミング規約です。
 String name
          ストアドファンクションの名前です。
 int queryTimeout
          クエリタイムアウト(秒)です。
 String schema
          スキーマ名です。
 

catalog

public abstract String catalog
カタログ名です。

デフォルト:
""

schema

public abstract String schema
スキーマ名です。

デフォルト:
""

name

public abstract String name
ストアドファンクションの名前です。

指定しない場合、注釈されたメソッドの名前が使用されます。

デフォルト:
""

queryTimeout

public abstract int queryTimeout
クエリタイムアウト(秒)です。

指定しない場合、Config.getQueryTimeout()が使用されます。

関連項目:
Statement.setQueryTimeout(int)
デフォルト:
-1

mapKeyNaming

public abstract MapKeyNamingType mapKeyNaming
結果セットを @code{Map} もしくは @code{List>} として取得する場合のマップのキーに対するネーミング規約です。

導入されたバージョン:
1.7.0
デフォルト:
org.seasar.doma.MapKeyNamingType.NONE

ensureResultMapping

public abstract boolean ensureResultMapping
結果がエンティティやエンティティのリストの場合、エンティティのすべてのプロパティに結果セットのカラムがマッピングされることを保証します。

true の場合、マッピングされないプロパティが存在すれば、このアノテーションが注釈されたメソッドから ResultMappingException がスローされます。

導入されたバージョン:
1.34.0
デフォルト:
false


Copyright © 2009-2014 The Seasar Foundation. All Rights Reserved.