创建增强型客户端和 DynamoDbTable - Amazon SDK for Java 2.x
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

创建增强型客户端和 DynamoDbTable

创建增强型客户端

DynamoDbEnhancedClient类或其异步类是使用 DynamoDB 增强型客户端 API 的入口点。DynamoDbEnhancedAsyncClient

增强型客户端需要标准 DynamoDbClient 才能执行工作。API 提供了两种创建 DynamoDbEnhancedClient 实例的方法。第一个选项是使用从配置设置中选取的默认设置创建标准 DynamoDbClient,如以下代码段所示。

DynamoDbEnhancedClient enhancedClient = DynamoDbEnhancedClient.create();

如果要配置底层标准客户端,可以将其提供给增强型客户端的生成器方法,如以下代码段所示。

// Configure an instance of the standard DynamoDbClient. DynamoDbClient standardClient = DynamoDbClient.builder() .region(Region.US_EAST_1) .credentialsProvider(ProfileCredentialsProvider.create()) .build(); // Use the configured standard client with the enhanced client. DynamoDbEnhancedClient enhancedClient = DynamoDbEnhancedClient.builder() .dynamoDbClient(standardClient) .build();

创建 DynamoDbTable 实例

可以将 DynamoDbTable 视为使用 TableSchema 提供的映射功能的 DynamoDB 表的客户端表示形式。该 DynamoDbTable 类提供了 CRUD 操作的方法,允许您与单个 DynamoDB 表进行交互。

DynamoDbTable<T> 是一个采用单一类型参数的通用类,无论是自定义类还是处理文档类型项目时的 EnhancedDocument。此参数类型在您使用的类和单个 DynamoDB 表之间建立关系。

使用 DynamoDbEnhancedClienttable() 工厂方法创建 DynamoDbTable 实例,如以下代码段所示。

static final DynamoDbTable<Customer> customerTable = enhancedClient.table("Customer", TableSchema.fromBean(Customer.class));

DynamoDbTable 实例是单例类的候选实例,因为它们是不可变的,可以在整个应用程序中使用。

现在,您的代码具有可以处理实例的 DynamoDB 表的内存表示形式。Customer实际的 DynamoDB 表可能存在,也可能不存在。如果名为 Customer 的表已经存在,则可以开始对其执行 CRUD 操作。如果该表不存在,请使用 DynamoDbTable 实例创建表,如下一部分所述。