有关更多信息,请参阅AWS SDK for Java API Reference中的 DynamoDBMapperConfig。
您可以针对 DynamoDBMapperConfig 的实例使用以下参数:
DynamoDBMapperConfig.ConsistentReads 枚举值:
EVENTUAL — 此映射器实例使用最终一致性读取请求。
CONSISTENT — 此映射器实例使用强一致性读取请求。您可以将此可选设置用于 load、query 或 scan 操作。强一致性读取会影响性能和成本;有关更多信息,请参阅 DynamoDB 产品详细信息页。
如果您未指定适用于映射器实例的读取一致性设置,则默认为 EVENTUAL。
DynamoDBMapperConfig.PaginationLoadingStrategy 枚举值 — 控制映射器实例如何处理分页数据列表(如,来自 query 或 scan 的结果):
LAZY_LOADING — 该映射器实例在可能时加载数据,并将所有加载的结果保留在内存中。
EAGER_LOADING — 该映射器实例在列表初始化之后立即加载数据。
ITERATION_ONLY — 您只能使用 Iterator 从列表读取。在迭代过程中,该列表会在加载下一页之前清除所有之前的结果,这样该列表就会将至多一页加载的结果保留在内存中。这也意味着只能对该列表迭代一次。当处理较大的项目时,为了减少内存开销,建议采用这种策略。
如果您不为映射器实例指定分页加载策略,则会默认为 LAZY_LOADING。
DynamoDBMapperConfig.SaveBehavior 枚举值 – 指定映射器实例在保存操作期间如何处理属性:
UPDATE — 在保存操作期间,所有已建模的属性都将更新,未建模的属性不受影响。基元数字类型 (byte、int 和 long) 设置为 0。对象类型设置为空。
CLOBBER — 清除并替换保存操作期间的所有属性,包括未建模的属性。这是通过删除并重新创建项目完成的。受版本控制的字段约束也将被忽略。
如果您未指定适用于映射器实例的保存行为,则会默认为 UPDATE。
注意
DynamoDBMapper 事务操作不支持 DynamoDBMapperConfig.SaveBehavior 枚举。
DynamoDBMapperConfig.TableNameOverride 对象 — 指示映射器实例忽略由类的 DynamoDBTable 注释指定的表名称,改为使用您提供的不同表名称。当您在运行时将数据划分到多个表中时,可以使用此对象。
如果需要,您可以针对每个操作覆盖 DynamoDBMapper 的默认配置对象。