2016-10-20 6 views

Antwort

10

Das wird save() Verfahren die putItem oder updateItem auf dem Wert in SaveBehavior gesetzt auszuführen basiert. Bitte beachten Sie die folgende Beschreibung. Aus diesem Grund gibt es in der DynamoDBMapper-Klasse keine Aktualisierungsmethode. Es ist jedoch eine separate Löschmethode verfügbar.

Speichert ein Element in DynamoDB. Die Service-Methode verwendet durch bestimmt wird, um die DynamoDBMapperConfig.getSaveBehavior() Wert, entweder AmazonDynamoDB.putItem (PutItemRequest) oder AmazonDynamoDB.updateItem (UpdateItemRequest) zu verwenden:

UPDATE (Standard): Update nicht Auswirkungen auf nicht modellierte Attribute bei einer Sicherungsoperation und ein Nullwert für das modellierte Attribut entfernt es aus diesem Element in DynamoDB. Aufgrund der Einschränkung der updateItem-Anforderung sendet die Implementierung von UPDATE eine putItem-Anforderung, wenn ein Objekt nur mit Schlüssel gespeichert wird, und es wird eine weitere updateItem-Anforderung gesendet, wenn die angegebenen Schlüssel bereits in der Tabelle vorhanden sind.

UPDATE_SKIP_NULL_ATTRIBUTES: ähnlich, außer zu aktualisieren, die es jeden Nullwert Attribut (e) ignoriert und wird sie in DynamoDB aus diesem Artikel nicht entfernen. Es garantiert auch, nur eine einzige updateItem Anfrage zu senden, egal ob das Objekt nur Schlüssel ist oder nicht.

CLOBBER: CLOBBER wird gelöscht und alle Attribute ersetzen, enthalten unmodellierte diejenigen, (löschen und neu erstellen) auf speichern. Feldbedingte Feldeinschränkungen werden ebenfalls ignoriert ( ). Alle Optionen, die im Parameter saveExpression angegeben sind, werden allen Einschränkungen aufgrund von versionierten Attributen überlagert.

Beispiel Nutzung: -

DynamoDBMapperConfig dynamoDBMapperConfig = new DynamoDBMapperConfig(SaveBehavior.UPDATE); 
dynamoDBMapper.save(yourObject, dynamoDBMapperConfig); 
+1

Dies sollte als Antwort markiert werden. – WMios

+0

Ich zweite das. –

Verwandte Themen