從適用於 Java 的 SDK 第 1 版到第 2 版映射程式庫的高階變更 - AWS SDK for Java 2.x

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

從適用於 Java 的 SDK 第 1 版到第 2 版映射程式庫的高階變更

每個程式庫中的映射用戶端名稱在 V1 和 V2 中不同:

  • V1 - DynamoDBMapper

  • V2 - DynamoDB 增強型用戶端

您以大致相同的方式與兩個程式庫互動:您執行個體化映射器/用戶端,然後將 Java POJO 提供給讀取這些項目並將其寫入 DynamoDB 資料表APIs。這兩個程式庫也提供 POJO 類別的註釋,以指示用戶端如何處理 POJO。

移至 V2 時的顯著差異包括:

  • V2 和 V1 對低階 DynamoDB 操作使用不同的方法名稱。例如:

    V1 V2
    載入 getItem
    save putItem
    batchLoad batchGetItem
  • V2 提供多種方法來定義資料表結構描述,並將 POJOs對應至資料表。您可以選擇使用註釋或使用建置器從程式碼產生的結構描述。V2 還提供結構描述的可變和不可變版本。

  • 使用 V2 時,您會特別將資料表結構描述建立為第一個步驟之一,而在 V1 中,則會視需要從註釋的類別推斷資料表結構描述。

  • V2 在增強型用戶端 API 中包含文件 API 用戶端,而 V1 使用單獨的 API

  • 所有 APIs V2 中提供同步和非同步版本。

如需 V2 增強型用戶端的詳細資訊,請參閱本指南中的 DynamoDB 映射一節

匯入相依性差異

V1 V2
<dependencyManagement> <dependencies> <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-bom</artifactId> <version>1.X.X</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-dynamodb</artifactId> </dependency> </dependencies>
<dependencyManagement> <dependencies> <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>bom</artifactId> <version>2.X.X*</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>dynamodb-enhanced</artifactId> </dependency> </dependencies>

* 最新版本

在 V1 中,單一相依性同時包含低階 DynamoDB API 和映射/文件 API,而在 V2 中,您可以使用dynamodb-enhanced成品相依性來存取映射/文件 API。dynamodb-enhanced 模組包含低階dynamodb模組的暫時性相依性。