|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 必須 | オプション | 詳細: 要素 |
@Target(value=PARAMETER) @Retention(value=RUNTIME) public @interface ResultSet
ストアドファンクションやストアドプロシージャーから返される結果セットにマッピングされることを示します。
ResultSet
をカーソルとしてOUTパラメータで返すRDBMSにおいては、注釈されたパラメータは実質的にOUTパラメータとして扱われます
。そうでないRDBMSにおいては、IN、INOUT、OUTのいずれのパラメータにもみなされません。
Statement.getResultSet()
で取得される結果セットにマッピングされます。
このアノテーションが注釈されるパラメータは、 Function
もしくは Procedure
が注釈されたメソッドのパラメータでなければいけません。
注釈されるパラメータは、次の制約を満たす必要があります。
List
である。 List
の実型引数は、基本型、 ドメインクラス 、エンティティクラス、もしくは
Map<String, Object>
のいずれかでなければならない。
@Dao(config = AppConfig.class) public interface EmployeeDao { @Procedure void fetchEmployees(@In Integer departmentId, @ResultSet List<Employee> employees); }
EmployeeDao dao = new EmployeeDaoImpl(); List<Employee> employees = new ArrayList<Employee>(); dao.fetchEmployees(10, employees); for (Employee e : employees) { ... }
任意要素の概要 | |
---|---|
boolean |
ensureResultMapping
結果がエンティティやエンティティのリストの場合、エンティティのすべてのプロパティに結果セットのカラムがマッピングされることを保証します。 |
public abstract boolean ensureResultMapping
true
の場合、マッピングされないプロパティが存在すれば、このアノテーションが注釈されたパラメータを持つメソッドから
ResultMappingException
がスローされます。
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 必須 | オプション | 詳細: 要素 |