我想使用DynamoDBMapper只更新项目的特定属性。例如,我有一个带有属性的用户表。,id,name,地址。
@Data
@DynamoDBTable(tableName = "Users")
public class User {
@DynamoDBHashKey
@DynamoDBGeneratedUuid(DynamoDBAutoGenerateStrategy.CREATE)
private String id;
@DynamoDBAttribute
private String name;
@DynamoDBAttribute
private Address address;
}
我想只更新地址属性,而不是其他字段(选择性更新)。
我可以使用UpdateItemSpec找到一个示例,但在DynamoDBMapper中找不到。使用UpdateItemSpec,我可以使用withUpdateExpression()定义更新表达式。更多细节可以在这里找到。
是否有任何方法,以实现与DynamoDBMapper相同?
使用UPDATE_SKIP_NULL_属性
SaveBehavior
更多详情:https://aws.amazon.com/blogs/developer/using-the-savebehavior-configuration-for-the-dynamodbmapper/
向您的保存
操作添加保存行为,并保持除id
和地址
之外的字段为null:
mapper.save(user, new DynamoDBMapperConfig(SaveBehavior.UPDATE_SKIP_NULL_ATTRIBUTES));
我正在使用AWSJavaSDK的DynamoDBMapper,并处理一个相当简单的项目:它有一个字符串属性(用作哈希键)和一个map属性。 我可以使用和方法读写我的对象。我遇到的问题是,当我需要在映射中为表中的现有项更新或添加单个条目时。在不知道所述项的映射的现有条目的情况下(并且我不想每次尝试更新或添加之前都执行),我似乎能做的最好的事情就是删除整个映射,并用我尝试更新或添加的单个条目替换它。是
我刚刚开始我的第一个DynamoDB项目,我一直在尽可能多地阅读文档。我认为我的项目最好的可能性是使用SDK中的高级DynamoDbMapper来允许CRUD操作。 在DynamoDB文档中,有一种属性值“M”的类型,可以在这里看到http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_AttributeValue.htm
背景: < li >我正在使用< code>npm和< code>docker在< code>node.js中编写代码。我试图让我的docker文件在构建时使用缓存,这样不会花太长时间。 < li >我们有一个“通用”存储库,用于保存在各种存储库中使用的逻辑,并通过npm软件包进行传播。 问题是: 我希望docker文件不要使用我的“通用”包上的缓存。 Docker文件: package.json
我正在尝试更新当前登录用户的密码。但它显示了零点异常。 配置文件控制器: ProfileService: 给我这个错误: 2019-07-09 01:55:04.284错误---[nio-8080-exec-8]o.g.web.errors.GrailsExceptionResolver: NullPointerExcture发生时处理请求:[POST] /profile/doPasswordCh
我正在尝试模拟一个游戏板,多个玩家可以提交他们的游戏分数。 波乔即是。java表示排行榜中的一个条目。注意overriden equals()方法。 Position是排行榜中的位置,1是得分最高的用户 我使用一个树状图来存储条目,根据得分,它们会自动排序 如何设置条目的“位置”字段?例如:下面是按分数排序的条目,如何获得相应的“索引/位置”并将其设置在条目中?