Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Optimistische Sperrunterschiede zwischen Version 1 und Version 2 des SDK for Java
Sowohl V1 als auch V2 implementieren optimistisches Sperren mit einer Attributanmerkung, die eine Eigenschaft in Ihrer Bean-Klasse markiert, um die Versionsnummer zu speichern.
V1 | V2 | |
---|---|---|
Anmerkung zur Bean-Klasse | @DynamoDBVersionAttribute |
@DynamoDbVersionAttribute (Beachten Sie, dass V2 ein kleingeschriebenes „b“ verwendet) |
Erstes Speichern | Das Versionsnummer-Attribut ist auf 1 gesetzt. |
Der Startwert für das auf festgelegte Versionsattribut |
Aktualisierung | Das Versionsnummernattribut wird um 1 erhöht, wenn die bedingte Prüfung sicherstellt, dass die Versionsnummer des zu aktualisierenden Objekts mit der Nummer in der Datenbank übereinstimmt. |
Das Versionsnummernattribut wird erhöht, wenn bei der bedingten Überprüfung überprüft wird, ob die Versionsnummer des zu aktualisierenden Objekts mit der Nummer in der Datenbank übereinstimmt. Das Versionsnummernattribut wird um die mit festgelegte |
Löschen | DynamoDBMapper fügt eine bedingte Überprüfung hinzu, ob die Versionsnummer des gelöschten Objekts mit der Versionsnummer in der Datenbank übereinstimmt. |
V2 fügt nicht automatisch Bedingungen für die Löschvorgänge hinzu. Sie müssen Bedingungsausdrücke manuell hinzufügen, wenn Sie das Löschverhalten steuern möchten. Im folgenden Beispiel
|
Transaktionales Schreiben mit einer Zustandsprüfung | Sie können eine Bean-Klasse, die mit einer Anmerkung versehen ist, nicht @DynamoDBVersionAttribute in einer Methode verwenden. addConditionCheck |
Sie können eine Bean-Klasse mit der @DynamoDbVersionAttribute Anmerkung in einer addConditionCheck Builder-Methode für eine transactWriteItems Anfrage verwenden. |
Deaktivieren | Deaktivieren Sie optimistisches Sperren, indem Sie den
DynamoDBMapperConfig.SaveBehavior Aufzählungswert von UPDATE bis CLOBBER ändern. |
Verwenden Sie die |