0
我下載了AWS Java SDK的1.4.5版本,並且無法在DynamoDB表上遷移查詢。這是一個簡單的哈希+範圍查詢。DynamoDBMapper v2異常
V1工程確定:
Condition c = new Condition().withComparisonOperator(ComparisonOperator.LT)
.withAttributeValueList(new AttributeValue(new Date().toString()));
DynamoDBQueryExpression q = new DynamoDBQueryExpression(new AttributeValue("john")).withRangeKeyCondition(c);
的API V2似乎工作有點不同。方法簽名更改需要的代碼重新寫爲:
Condition c = new Condition().withComparisonOperator(ComparisonOperator.LT)
.withAttributeValueList(new AttributeValue(new Date().toString()));
DynamoDBQueryExpression q = new DynamoDBQueryExpression()
.withIndexName("user")
.withHashKeyValues("john")
.withRangeKeyCondition("timestamp", c);
的AWS SDK拋出異常:
The range key(timestamp) in the query is the primary key of the table, not the range key of index(user)
沒有任何一個有說明如何與新的執行查詢的代碼示例DynamoDB v2 api?
什麼是散列和範圍屬性名稱? –
陳,表名是帶有散列和範圍鍵的用戶。已經是「用戶」,範圍是「時間戳」。注意:因爲我在StackOverflow上發佈了這個,所以我已經能夠使用AWS的低級Java API工作。我仍然無法使用更高級別的API來解決這個問題。 –