Java 如何使用DynamoDBMapper批量保存实体跳过空属性

Java 如何使用DynamoDBMapper批量保存实体跳过空属性,java,amazon-dynamodb,Java,Amazon Dynamodb,我使用UPDATE\u SKIP\u NULL\u ATTRIBUTES作为创建映射器的配置,以便保存实体并跳过NULL属性。它确实奏效了。但是,当我调用batchSave时,它不起作用 有人知道这个问题吗 ``` DynamoDBMapperConfig update_config = DynamoDBMapperConfig.builder() .withSaveBehavior(DynamoDBMapperConfig.SaveBehavior.UPDATE_SKIP_NU

我使用
UPDATE\u SKIP\u NULL\u ATTRIBUTES
作为创建映射器的配置,以便保存实体并跳过NULL属性。它确实奏效了。但是,当我调用batchSave时,它不起作用

有人知道这个问题吗

```
DynamoDBMapperConfig update_config = DynamoDBMapperConfig.builder()
        .withSaveBehavior(DynamoDBMapperConfig.SaveBehavior.UPDATE_SKIP_NULL_ATTRIBUTES)
            .build();
mapper = new DynamoDBMapper(client, update_config);

List<DynamoDBMapper.FailedBatch> failedBatches = mapper.batchSave(one, two);
```
```
DynamoDBMapperConfig update_config=DynamoDBMapperConfig.builder()
.withSaveBehavior(DynamoDBMapperConfig.SaveBehavior.UPDATE\u SKIP\u NULL\u属性)
.build();
映射器=新的DynamoDBMapper(客户端,更新配置);
List failedbacks=mapper.batchSave(一,二);
```

最后,我发现null属性已更新为DB,我不想这样做。我只想用NOTNULL值保存属性。

好吧,我读了DynamoDBMapper的文档,发现它确实不支持
批量保存跳过空属性的功能

以下是链接:

原因是:

config-仅考虑DynamoDBMapperConfig.getTableNameOverride()和DynamoDBMapperConfig.getBatchWriteRetryStrategy()。如果指定了TableNameOverride,则两个参数列表中的所有对象都将被视为属于给定的表替代。特别是,无论config参数的值是多少,此方法的作用总是好像指定了**SaveBehavior.CLOBBER**。

所以,我不知道如何只更新多个实体中的一个字段。我必须通过PK获得所有,然后保存它们