0
这篇文章的AWS SDK的Java说,它可以自动生成通过@DynamoDBAutoGenerateKey
在数据类的关键: https://aws.amazon.com/articles/0802321832592496DynamoDB的映射器是否支持查询自动生成的密钥?
的问题是,我该如何加载像这样基于该键?如果我使用该ID构造一个对象并调用,它会自动查找正确的散列吗?
这篇文章的AWS SDK的Java说,它可以自动生成通过@DynamoDBAutoGenerateKey
在数据类的关键: https://aws.amazon.com/articles/0802321832592496DynamoDB的映射器是否支持查询自动生成的密钥?
的问题是,我该如何加载像这样基于该键?如果我使用该ID构造一个对象并调用,它会自动查找正确的散列吗?
那是正确的。
例如用映射器:
DynamoDBMapperConfig mapperConfig = DynamoDBMapperConfig
.builder()
.withTableNameOverride(DynamoDBMapperConfig.TableNameOverride.withTableNamePrefix(environment + "."))
.withConversionSchema(ConversionSchemas.V2)
.build();
client.getMapper().load(DBActivity.class, id, mapperConfig)
其中,id是自动生成的密钥。
嗯,我不知道自动生成的密钥是什么,它是从我的对象的私有成员生成的散列。如果我使用同一个成员进行加载,它仍然可以工作吗? – jayjyli
您不知道您实施的任何数据库的自动生成值。发出创建呼叫后,生成的值需要返回给调用者。它的API调用者有责任提供正确的密钥来采取行动。 –
但是这意味着调用者将不得不跟踪价值,并知道随后使用该值触发DB,对吧?没有这些,记录会变得无法访问? – jayjyli