8.22.58 @Version
(1) 説明
楽観的ロック機能を使用するために用いるversionフィールドまたはversionプロパティを指定するアノテーションです。
versionフィールドまたはversionプロパティでサポートする型を次に示します。
-
int
-
java.lang.Integer
-
short
-
java.lang Short
-
long
-
java.lang Long
-
java.sql.Timestamp
このアノテーションを使用する場合は,次のことに注意してください。
-
@Versionと@Temporalは同時に指定できません。どちらかのアノテーションだけを指定してください。
-
versionプロパティをプライマリテーブル以外のテーブルには指定しないでください。
-
@Versionで指定されたフィールドまたはプロパティは,アプリケーションによって更新してはいけません。
-
SQLを使用して複数のレコードを一度に更新するバルク更新の場合は,versionフィールドまたはversionプロパティを自動更新しません。このため,バルク更新をする場合に楽観的ロックを使用するときは,手動で参照および更新をする必要があります。
-
エンティティクラスに対しては,versionフィールドまたはversionプロパティは一つだけ設定できます。複数のversionフィールドまたはversionプロパティを設定した場合,一つだけ有効となります。設定が有効になる順番は不定です。
適用可能要素は,メソッドとフィールドです。
(2) 属性
@Versionの属性はありません。