[英]Java Lambda for Pagination scan for dynamodb
所以我尝试使用 lastkeyevaluated、limit 和 filterexpression 扫描 dynamodb 表。 我还想从一个 dynamodb 中获取返回的 lastevaluatedkey、filterexpression 和 limit,并将其添加到新的 dynamodb 表中。 这是我现在的代码
package dev.example;
import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;
import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClientBuilder;
import com.amazonaws.services.dynamodbv2.document.DynamoDB;
import com.amazonaws.services.dynamodbv2.model.AttributeValue;
import com.amazonaws.services.dynamodbv2.model.ScanRequest;
import com.amazonaws.services.dynamodbv2.model.ScanResult;
import java.util.Map;
public class ScanTable {
static AmazonDynamoDB client = AmazonDynamoDBClientBuilder.standard().build();
//static DynamoDB dynamoDB = new DynamoDB(client);
public static void scan()
{
Map<String, AttributeValue> lastKeyEvaluated = null;
String status = "open";
do {
ScanRequest scanRequest = new ScanRequest()
.withTableName("tablename")
.withLimit(10)
.withExclusiveStartKey(lastKeyEvaluated)
.withFilterExpression(status);
ScanResult result = client.scan(scanRequest);
for (Map<String, AttributeValue> item : result.getItems()){
System.out.println(item);
}
lastKeyEvaluated = result.getLastEvaluatedKey();
} while (lastKeyEvaluated == null);
}
public static void main(String[] args) throws Exception {
scan();
}
}
我不知道该怎么做。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.