shw*_*tap 3 amazon-dynamodb aws-sdk amazon-dynamodb-local
我只想使用 DynamoDBMapper 更新项目的特定属性。例如,我有一个带有属性的用户表,即 id、名称、地址。
@Data
@DynamoDBTable(tableName = "Users")
public class User {
@DynamoDBHashKey
@DynamoDBGeneratedUuid(DynamoDBAutoGenerateStrategy.CREATE)
private String id;
@DynamoDBAttribute
private String name;
@DynamoDBAttribute
private Address address;
}
Run Code Online (Sandbox Code Playgroud)
我只想更新地址属性而不是其他字段(选择性更新)。
我可以通过使用 UpdateItemSpec 找到一个示例示例,但无法为 DynamoDBMapper 找到它。使用 UpdateItemSpec,我可以使用 withUpdateExpression() 来定义更新表达式。可以在此处找到更多详细信息。
有什么办法可以用DynamoDBMapper实现相同的目标吗?
使用UPDATE_SKIP_NULL_ATTRIBUTESSaveBehavior
有关更多详细信息:https : //aws.amazon.com/blogs/developer/using-the-savebehavior-configuration-for-the-dynamodbmapper/
将 SaveBehavior 添加到您的save操作中,并保留id和以外的字段address:
mapper.save(user, new DynamoDBMapperConfig(SaveBehavior.UPDATE_SKIP_NULL_ATTRIBUTES));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1701 次 |
| 最近记录: |