Java DynamoDB';带DynamoDBMapper.query的s withLimit子句
我将DynamoDBMapper用于一个类,比如“User”(用户名是主键),它有一个字段,上面写着“Status”。它是一个哈希+范围键表,每当用户的状态发生更改(更改非常罕见),我们都会向该表中添加一个新条目以及时间戳(即范围键)。要获取当前状态,我正在执行以下操作:Java DynamoDB';带DynamoDBMapper.query的s withLimit子句,java,amazon-dynamodb,Java,Amazon Dynamodb,我将DynamoDBMapper用于一个类,比如“User”(用户名是主键),它有一个字段,上面写着“Status”。它是一个哈希+范围键表,每当用户的状态发生更改(更改非常罕见),我们都会向该表中添加一个新条目以及时间戳(即范围键)。要获取当前状态,我正在执行以下操作: DynamoDBQueryExpression expr = new DynamoDBQueryExpression(new AttributeValue().withS(userName))
DynamoDBQueryExpression expr =
new DynamoDBQueryExpression(new AttributeValue().withS(userName))
.withScanIndexForward(false).withLimit(1);
PaginatedQueryList<User> result =
this.getMapper().query(User.class, expr);
if(result == null || result.size() == 0) {
return null;
}
for(final User user : result) {
System.out.println(user.getStatus());
}
我想了解的是,在这种情况下,withLimit
条款的全部意义是什么,还是我做错了什么?2013年3月,一位用户投诉了同样的问题
亚马逊的一位代表让他使用queryPage函数
似乎并没有保留对元素的限制,而是对单个API调用中检索到的元素块的限制,查询页面可能会有所帮助
你也可以调查一下
此外,你可以随时为团队服务
final String currentStatus = result.get(0).getStatus();