翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
SDK for Java のバージョン 1 とバージョン 2 のオプティミスティックロックの違い
V1 と V2 はどちらも、バージョン番号を保存する Bean クラス上の 1 つのプロパティをマークする属性注釈を持つオプティミスティックロックを実装します。
V1 | V2 | |
---|---|---|
Bean クラス注釈 | @DynamoDBVersionAttribute |
@DynamoDbVersionAttribute (V2 は小文字の「b」を使用することに注意してください) |
初期保存 | バージョン番号属性を 1 に設定します。 |
で設定されたバージョン属性の開始値 |
更新 | 更新されるオブジェクトのバージョン番号がデータベース内の番号と一致することを条件チェックで検証すると、バージョン番号属性は 1 ずつ増加します。 |
更新されるオブジェクトのバージョン番号がデータベース内の番号と一致することを条件チェックで検証すると、バージョン番号属性が増分されます。 で設定された |
削除 | DynamoDBMapper は、削除されるオブジェクトのバージョン番号がデータベースのバージョン番号と一致するという条件付きチェックを追加します。 |
V2 は、削除オペレーションの条件を自動的に追加しません。削除動作を制御する場合は、条件式を手動で追加する必要があります。 次の例は、 Bean のバージョン属性
|
条件チェックによるトランザクション書き込み | @DynamoDBVersionAttribute addConditionCheck メソッドで に注釈が付けられた Bean クラスを使用することはできません。 |
transactWriteItems リクエストのaddConditionCheck ビルダーメソッドで、 @DynamoDbVersionAttribute 注釈を持つ Bean クラスを使用できます。 |
[無効] | 列挙値を から に変更して、オプティミスティックロックUPDATE を無効にします DynamoDBMapperConfig.SaveBehavior CLOBBER 。 |
|