AWS DynamoDB如何向集合JAVA示例中添加值

时间:2018-09-27 09:53:59

标签: java amazon-dynamodb dynamo-local

有一个已经回答过的question可以满足我的要求,但是我想要用Java编写,但是我做不到,请告诉我如何用Java讲

aws dynamodb update-item --table-name predict \
--key '{"id": {"S": "keyname"}}' \
--update-expression "ADD attributename :attributevalue" \
--expression-attribute-values '{":attributevalue": {"SS": ["value1", "value2"]}}'

这可以从CLI进行,并且可以执行我想要的操作 我尝试过:

UpdateItemSpec updateItemSpec = new UpdateItemSpec()
            .withPrimaryKey("id", "keyname")
            .withUpdateExpression("add attributename :attributevalue")
            .withValueMap(new ValueMap().withStringSet("attributevalue", "value1", "value2"))
            .withReturnValues(ReturnValue.ALL_NEW);
dynamoDB.getTable(DYNAMO_TABLE_NAME).updateItem(updateItemSpec);

我收到以下错误消息:

java.lang.NoSuchMethodError: com.amazon.dynamodb.grammar.DynamoDbExpressionParser.parseUpdate(Ljava/lang/String;Lorg/antlr/v4/runtime/ANTLRErrorListener;)Lorg/antlr/v4/runtime/tree/ParseTree;

所以主要是我想附加一个Set,如果不存在,请使用指定的值创建

重要提示

似乎在连接到本地dynamo时不起作用,而在连接到真实的dynamo时却起作用。 :(

0 个答案:

没有答案