2017-05-16 5 views
1

Ich benutze AmazonDynamoDBClient putItem Methode, um Artikel in DB einzufügen. Rückgabetyp von putItem ist PutItemResult, aber ich bekomme es als null.Amazon DynamoDB putItem gibt null zurück

AmazonDynamoDBClient client = new AmazonDynamoDBClient(); 
PutItemRequest r = new PutItemRequest(); 
r.addItemEntry("custId",new Attribute Value("101")); 
PutItemResult result = client.putItem(r); 
//result is null 

Artikel wurde erfolgreich in DB eingefügt, aber warum wird das Ergebnis null?

Antwort

2

Bitte geben Sie die RETURN_VALUE basierend auf Ihrer Anforderung. Der Standardwert ist NONE.

Return - (String) Verwenden Return wenn Sie das Element Attribute erhalten möchten, wie sie erschienen, bevor sie mit dem PutItem Anfrage aktualisiert wurden. Für PutItem sind die gültigen Werte:

NONE - Wenn ReturnValues ​​nicht angegeben ist oder wenn der Wert NONE lautet, wird nichts zurückgegeben. (Diese Einstellung ist die Standardeinstellung für ReturnValues.) ALL_OLD - Wenn PutItem ein Attributname-Wert-Paar überschrieben hat, wird der Inhalt des alten Elements zurückgegeben. Hinweis: Der ReturnValues-Parameter wird von mehreren DynamoDB-Operationen verwendet. PutItem erkennt jedoch keine anderen Werte als NONE oder ALL_OLD .

Von API-Dokumentation: -

public PutItemRequest(String tableName, 
         Map<String,AttributeValue> item, 
         String returnValues) 

Set return values

Der Return Parameter von mehreren DynamoDB Operationen verwendet wird; PutItem erkennt jedoch keine anderen Werte als NONE oder ALL_OLD.

ALL_NEW, UPDATED_NEW und UPDATED_OLD sind für UpdateItem-Vorgänge.

UPDATED_OLD - Gibt nur die aktualisierten Attribute zurück, wie sie vor der Operation UpdateItem erschienen sind.

ALL_NEW - Gibt alle Attribute des Elements zurück, wie sie nach dem UpdateItem-Vorgang angezeigt werden.

UPDATED_NEW - Gibt nur die aktualisierten Attribute zurück, wie sie nach dem UpdateItem-Vorgang angezeigt werden.

+0

PutItem erkennt keine anderen Werte als NONE oder ALL_OLD, warum gibt es ALL_NEW und andere ReturnValues? Was passiert, wenn ich einen Artikel zum ersten Mal einfüge und denselben Artikel zurückgeben möchte? –

+0

Aktualisierte die Antwort für andere Rückgabewerte. Sie sind speziell für Update-Artikel. – notionquest

+0

haben es geschafft. Vielen Dank! –