使用進階對應功能 - AWS SDK for Java 2.x

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用進階對應功能

了解 DynamoDB 增強型用戶端 API 中的進階表格結構定義功能。

瞭解表結構定義類型

TableSchema是 DynamoDB 增強型用戶端 API 對應功能的介面。它可以將資料物件對映至的地圖,也可以從中對映資料物件AttributeValues。一個對TableSchema象需要知道它正在映射的表的結構。此結構資訊儲存在TableMetadata物件中。

增強型用戶端 API 有幾個實作TableSchema,如下所示。

從註釋的類生成的表模式

從帶註釋的類構建一個TableSchema中等昂貴的操作,因此我們建議在應用程序啟動時執行一次此操作。

BeanTableSchema

這個實現是基於一個 bean 類的屬性和註釋構建的。此方法的範例將在 「開始使用」一節中展示。

注意

如果 a 行BeanTableSchema為不如您預期,請啟用software.amazon.awssdk.enhanced.dynamodb.beans.

ImmutableTableSchema

這個實現是從一個不可變的數據類構建的。本使用不可變的資料類別節將說明此方法。

使用生成器生成的表模式

以下 TableSchema s 是通過使用構建器從代碼構建的。這種方法比使用帶註釋數據類的方法成本更低。構建器方法避免使用註釋,並且不需要 JavaBean 命名標準。

StaticTableSchema

此實現是為可變數據類構建的。本指南的入門部分演示瞭如何生成StaticTableSchema使用構建器

StaticImmutableTableSchema

與構建的方式類似StaticTableSchema,您可以TableSchema使用構建生成此類型的實現以與不可變數據類一起使用。

沒有固定結構描述的資料表結構定義

DocumentTableSchema

與的其他實作不同TableSchema,您不會為實DocumentTableSchema體定義屬性。通常,您只會指定主索引鍵和屬性轉換器提供者。EnhancedDocument執行個體會提供您從個別元素或 JSON 字串建立的屬性。