适用于 Java 的 AWS 开发工具包版本 2
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

创建服务客户端

要提交请求至 Amazon Web Services,您首先要创建一个服务客户端对象。在 2.x 版的开发工具包中,您只能使用服务客户端生成器创建客户端。

每个 AWS 服务都有一个服务接口,提供与服务 API 中各项操作对应的方法。例如,Amazon DynamoDB 的服务接口命名为 DynamoDbClient。每个服务接口都有静态工厂生成器方法,可用于构建服务接口的实施。

获取客户端生成器

要获取客户端的实例,请使用静态工厂方法 builder。然后,使用生成器中的 setter 对它进行自定义,如以下示例所示。

在AWS SDK for Java 2.0 中,为 setter 提供的名称中不含 with 前缀。

DynamoDbClient client = DynamoDbClient.builder() .region(Region.US_WEST_2) .credentialsProvider(ProfileCredentialsProvider.builder() .profileName("myProfile") .build()) .build();

注意

常用的 setter 方法会返回 builder 对象,由此可以将方法调用组合起来,这样不仅方便而且代码更加便于阅读。在配置需要的属性后,可以调用 build 方法创建客户端。客户端一经创建便不可变。创建带不同设置的客户端的唯一方法是构建新的客户端。

使用 DefaultClient

客户端生成器包含名为 create 的另一个工厂方法。此方法将使用默认配置创建服务客户端。该客户端使用默认提供程序链加载凭证和 AWS 区域。如果不能根据运行应用程序的环境确定凭证或区域,则对 create 的调用失败。有关如何确定凭证和区域的更多信息,请参阅使用 AWS 凭证AWS 区域选择

创建默认客户端

DynamoDbClient client = DynamoDbClient.create();

客户端生命周期

开发工具包中的服务客户端是线程安全的。为了获得最佳性能,应将其作为永久对象。每个客户端自己有连接池资源,当客户端收集到垃圾时相应资源会释放。AWS SDK for Java 2.0 中的客户端现在扩展了 AutoClosable 接口。为了实现最佳实践,请通过调用 close 方法显式关闭客户端。

关闭客户端

DynamoDbClient client = DynamoDbClient.create(); client.close();