|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 必須 | オプション | 詳細: 要素 |
@Target(value=METHOD) @Retention(value=RUNTIME) public @interface BatchUpdate
バッチ更新処理を示します。
このアノテーションが注釈されるメソッドは、Daoインタフェースのメンバでなければいけません。
注釈されるメソッドは次の制約を満たす必要があります。
Iterable
のサブタイプである。
int[]
である。
@Entity public class Employee { ... } @Dao(config = AppConfig.class) public interface EmployeeDao { @BatchUpdate int[] update(List<Employee> employee); }注釈されるメソッドは、次の例外をスローすることがあります。
DomaNullPointerException
パラメータに null
を渡した場合
OptimisticLockException
楽観的排他制御が有効で更新件数が0件の場合
UniqueConstraintException
一意制約違反が発生した場合
SqlFileNotFoundException
sqlFile
要素の値が true
で、SQLファイルが見つからなかった場合
JdbcException
上記以外でJDBCに関する例外が発生した場合
任意要素の概要 | |
---|---|
int |
batchSize
バッチサイズです。 |
String[] |
exclude
UPDATE文のSET句から除外するプロパティ名の配列です。 |
boolean |
ignoreVersion
楽観的排他制御用のバージョン番号を無視するかどうかを示します。 |
String[] |
include
UPDATE文のSET句に含めるプロパティ名の配列です。 |
boolean |
includeVersion
推奨されていません。 代わりに includeVersion() を使用してください。 |
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()
@Deprecated public abstract boolean includeVersion
includeVersion()
を使用してください。
public abstract boolean ignoreVersion
true
の場合、更新条件にバージョン番号を含めません。
public abstract String[] include
ここに指定できるのは、カラム名ではなく更新対象エンティティクラスのプロパティ名です。
この要素に対する指定は、sqlFile()
が false
の場合にのみ有効です。
public abstract String[] exclude
ここに指定できるのは、カラム名ではなく更新対象エンティティクラスのプロパティ名です。
この要素に対する指定は、sqlFile()
が false
の場合にのみ有効です。
public abstract boolean suppressOptimisticLockException
OptimisticLockException
を抑制するかどうかを示します。
この要素に対する指定は、sqlFile()
が false
の場合にのみ有効です。
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 必須 | オプション | 詳細: 要素 |