|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 必須 | オプション | 詳細: 要素 |
@Target(value=METHOD) @Retention(value=RUNTIME) public @interface BatchDelete
バッチ削除処理を示します。
このアノテーションが注釈されるメソッドは、 Daoインタフェースのメンバでなければいけません。
注釈されるメソッドは次の制約を満たす必要があります。
Iterable
のサブタイプである。
int[]
である。
@Entity public class Employee { ... } @Dao(config = AppConfig.class) public interface EmployeeDao { @BatchDelete int[] delete(List<Employee> employee); }注釈されるメソッドは、次の例外をスローすることがあります。
DomaNullPointerException
パラメータに null
を渡した場合
OptimisticLockException
楽観的排他制御が有効なで更新件数が0件の場合
SqlFileNotFoundException
sqlFile
要素の値が true
で、SQLファイルが見つからなかった場合
JdbcException
上記以外でJDBCに関する例外が発生した場合
任意要素の概要 | |
---|---|
int |
batchSize
バッチサイズです。 |
boolean |
ignoreVersion
楽観的排他制御用のバージョン番号を無視するかどうかを示します。 |
int |
queryTimeout
クエリタイムアウト(秒)です。 |
boolean |
sqlFile
SQLファイルにマッピングするかどうかを示します。 |
boolean |
suppressOptimisticLockException
削除結果が1件でない場合にスローされる OptimisticLockException を抑制するかどうかを示します。 |
public abstract boolean sqlFile
public abstract int queryTimeout
指定しない場合、Config.getQueryTimeout()
が使用されます。
Statement.setQueryTimeout(int)
public abstract int batchSize
指定しない場合、Config.getBatchSize()
が使用されます。
Statement.executeBatch()
を実行する際のバッチサイズです。
バッチ対象の数がバッチサイズを上回る場合、バッチサイズの数だけ PreparedStatement.addBatch()
を呼び出し、 Statement.executeBatch()
を実行するということを繰り返します。
PreparedStatement.addBatch()
public abstract boolean ignoreVersion
true
の場合、削除条件にバージョン番号を含めません。
public abstract boolean suppressOptimisticLockException
OptimisticLockException
を抑制するかどうかを示します。
この要素に対する指定は、sqlFile()
が false
の場合にのみ有効です。
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 必須 | オプション | 詳細: 要素 |