OTSClient 是表格存储服务的客户端,它为调用者提供了一系列的方法,可以用来操作表、读写单行数据、读写多行数据等。使用 Java SDK 发起表格存储的请求,您需要初始化一个 OTSClient 实例,并根据需要修改 ClientConfiguration 的默认配置项。
确定 Endpoint
Endpoint 是阿里云表格存储服务各个实例的域名地址,目前支持下列形式。
提示:
除了公网可以访问外,也支持私网地址。
您可以登录阿里云表格存储控制台,进入 Instance 概览页,实例访问地址即是该实例的 Endpoint。
配置密钥
要接入阿里云表格存储服务,您需要拥有一个有效的访问密钥进行签名认证。目前支持下面三种方式:
主帐号的 AccessKeyId 和 AccessKeySecret。创建步骤如下:
在阿里云官网注册
阿里云帐号。
登录阿里云的管理控制台申请 AccessKey。
被授予访问表格存储权限的子帐号的 AccessKeyId 和 AccesskeySecret。创建步骤如下:
使用主帐号前往
访问控制 RAM,创建一个新的子帐号或者使用已经存在的子帐号。
使用主帐号授予子帐号访问表格存储的权限。
子帐号被授权后,就可以使用自己的 AccessKeyId 和 AccessKeySecret 访问了。
临时访问的 STS token。获取步骤如下:
应用的服务器通过访问 RAM/STS 服务,获取一个临时的 AccesskeyId、AccesskeySecret 和 token,发送给使用方。
使用方使用上述临时密钥访问表格存储服务。
初始化对接步骤
在获取到 AccessKeyId 和 AccessKeySecret 等密钥之后,您可以按照下面步骤进行初始化对接。
新建 Client
用户使用表格存储的 SDK时,必须首先构造一个 Client,通过调用这个 Client 的接口来访问表格存储服务,Client 的接口与表格存储提供的 RestfulAPI 是一致的。
表格存储新版的 SDK 提供了两种 Client,SyncClient 和 AsyncClient,分别对应同步接口和异步接口。同步接口调用完毕后请求即执行完成,使用方便,用户可以先使用同步接口了解表格存储的各种功能。异步接口相比同步接口更加灵活,如果对性能有一定需求,可以在使用异步接口和使用多线程之间做一些取舍。
[font=PingFangSC, "]不管是 SyncClient 还是 AsyncClient,都是线程安全的,且内部会自动管理线程和管理连接资源。不需要为每个线程创建一个Client,也不需要为每个请求创建一个Client,全局创建一个 Client 即可。
[font=PingFangSC, "]
示例代码
- 使用默认配置创建 SyncClient。 final String endPoint = "";
- final String accessKeyId = "";
- final String accessKeySecret = "";
- final String instanceName = "";
- SyncClient client = new SyncClient(endPoint, accessKeyId, accessKeySecret, instanceName);
- 使用自定义配置创建 SyncClient。// ClientConfiguration提供了很多配置项,以下只列举部分。
- ClientConfiguration clientConfiguration = new ClientConfiguration();
- // 设置建立连接的超时时间。
- clientConfiguration.setConnectionTimeoutInMillisecond(5000);
- // 设置socket超时时间。
- clientConfiguration.setSocketTimeoutInMillisecond(5000);
- // 设置重试策略,若不设置,采用默认的重试策略。
- clientConfiguration.setRetryStrategy(new AlwaysRetryStrategy());
- SyncClient client = new SyncClient(endPoint, accessId, accessKey,
- instanceName, clientConfiguration);
HTTPS
升级到 java 7 后即可。
多线程
支持多线程
使用多线程时,建议共用一个 OTSClient 对象。