インタフェース AutoUpdate<T>
-
- 型パラメータ:
T
- 処理対象となるエンティティの型
- 既知の実装クラスのリスト:
AutoUpdateImpl
public interface AutoUpdate<T>
更新を行うSQLを自動生成するクエリです。- バージョン:
- 0.3
- 作成者:
- T.TSUCHIE
-
-
メソッドの概要
すべてのメソッド インスタンス・メソッド abstractメソッド 修飾子とタイプ メソッド 説明 AutoUpdate<T>
changedFrom(Map<String,Object> beforeStates)
beforeStatesから変更のあったプロパティだけを更新対象とします。AutoUpdate<T>
changedFrom(T beforeEntity)
beforeEntityから変更のあったプロパティだけを更新対象としますAutoUpdate<T>
excludes(PropertyPath<?>... properties)
指定のプロパティを更新対象から除外します。AutoUpdate<T>
excludesNull()
null
値のプロパティを更新対象から除外します。int
execute()
更新クエリを実行します。AutoUpdate<T>
includes(PropertyPath<?>... properties)
指定のプロパティのみを更新対象とします。AutoUpdate<T>
includesVersion()
バージョンプロパティを通常の更新対象に含め、バージョンチェックの対象外とします。AutoUpdate<T>
queryTimeout(int seconds)
クエリタイムアウトの秒数を設定します。AutoUpdate<T>
suppresOptimisticLockException()
バージョンチェックを行った場合に、更新行数が0行でもOptimisticLockingFailureException
をスローしないようにします。
-
-
-
メソッドの詳細
-
queryTimeout
AutoUpdate<T> queryTimeout(int seconds)
クエリタイムアウトの秒数を設定します。-1 を指定するとJDBC ドライバーのデフォルト値を使用します。
- パラメータ:
seconds
- クエリタイムアウトの秒数- 戻り値:
- 自身のインスタンス。
- 導入されたバージョン:
- 0.3
-
includesVersion
AutoUpdate<T> includesVersion()
バージョンプロパティを通常の更新対象に含め、バージョンチェックの対象外とします。このメソッドが呼び出されると、
update
文のwhere
句にはバージョンのチェックが含まれなくなり、 バージョンプロパティは通常のプロパティと同じように更新対象に含められます (excludesNull()
やchangedFrom(Object)
等も同じように適用されます)。- 戻り値:
- このインスタンス自身
-
excludesNull
AutoUpdate<T> excludesNull()
null
値のプロパティを更新対象から除外します。- 戻り値:
- このインスタンス自身
-
suppresOptimisticLockException
AutoUpdate<T> suppresOptimisticLockException()
バージョンチェックを行った場合に、更新行数が0行でもOptimisticLockingFailureException
をスローしないようにします。- 戻り値:
- このインスタンス自身
-
includes
AutoUpdate<T> includes(PropertyPath<?>... properties)
指定のプロパティのみを更新対象とします。ID(主キー)は自動的に更新対象外となります。
アノテーション @Column(updatable = false) が設定されているプロパティは自動的に対象外となります。
- パラメータ:
properties
- 更新対象のプロパティ情報。- 戻り値:
- 自身のインスタンス。
- 例外:
IllegalOperateException
- エンティティに存在しないプロパティ名を指定した場合にスローされます。
-
excludes
AutoUpdate<T> excludes(PropertyPath<?>... properties)
指定のプロパティを更新対象から除外します。ID(主キー)は自動的に更新対象外となります。
アノテーション @Column(updatable = false) が設定されているプロパティは自動的に対象外となります。
- パラメータ:
properties
- 除外対象のプロパティ名。- 戻り値:
- 自身のインスタンス。
- 例外:
IllegalOperateException
- エンティティに存在しないプロパティ名を指定した場合にスローされます。
-
changedFrom
AutoUpdate<T> changedFrom(T beforeEntity)
beforeEntityから変更のあったプロパティだけを更新対象とします- パラメータ:
beforeEntity
- 変更前の状態を持つエンティティ- 戻り値:
- このインスタンス自身
-
changedFrom
AutoUpdate<T> changedFrom(Map<String,Object> beforeStates)
beforeStatesから変更のあったプロパティだけを更新対象とします。引数 beforeStates のサイズが 0 のときは何もしません。
- パラメータ:
beforeStates
- 変更前の状態を持つマップ。(key=プロパティ名、value=プロパティ値)- 戻り値:
- このインスタンス自身。
-
execute
int execute()
更新クエリを実行します。- 戻り値:
- 更新したレコード件数です。更新対象のプロパティ(カラム)がない場合は 0 を返します。
- 例外:
org.springframework.dao.OptimisticLockingFailureException
- 楽観的排他制御を行う場合に該当するレコードが存在しないときにスローされます。
-
-