欢迎使用阿里云开发者工具套件(Alibaba Cloud SDK for Java)。Alibaba Cloud SDK for Java让您不用复杂编程即可访问云数据库Redis版。本教程介绍如何安装并开始使用Alibaba Cloud SDK for Java。

在线调试和生成SDK示例

OpenAPI开发者门户提供在线调用云产品API、动态生成SDK示例代码和快速检索接口等功能,能显著降低使用API的难度,推荐您使用。

前提条件

  • 已经创建了AccessKey,详情请参见创建AccessKey
    说明 为避免主账号泄露AccessKey带来的安全风险,建议您创建RAM用户,授予RAM用户访问Redis资源的权限,再使用RAM用户的AccessKey来调用SDK。详情请参见账号访问控制
  • 安装Java环境。Alibaba Cloud SDK for Java要求使用JDK1.6或更高版本。

安装Alibaba Cloud SDK for Java

您可以通过添加Maven依赖或者导入JAR文件来安装Java SDK,详细说明请参见安装Alibaba Cloud SDK for Java
说明 通过添加Maven依赖下载SDK包时,请选择最新版本的SDK。

使用Alibaba Cloud SDK for Java调用Redis API

  1. 创建DefaultAcsClient实例并初始化。
    DefaultProfile profile = DefaultProfile.getProfile(
        "<regionId>",         // 地域ID
        "<accessKeyId>",      // RAM账号的AccessKey ID
        "<accessKeySecret>"); // RAM账号Access Key Secret
    IAcsClient client = new DefaultAcsClient(profile);
  2. 设置地域和域名信息(可选)。
    Endpoint是阿里云服务的API服务端地址。针对不同的地域,单个服务可能有不同的Endpoint。阿里云SDK内置了Endpoint寻址模块,当您调用SDK对一个服务发起请求时,SDK会自动根据您在创建SDK client时指定的地域ID(Region ID)和产品ID来找到Endpoint,所以该步骤为可选。各地域的Endpoint信息请参见服务地址
    DefaultProfile.addEndpoint(
        "<EndpointName>",  // Endpoint名称,可自定义
        "<regionId>",      // 地域ID
        "r-kvstore",       // 产品编码,Redis的编码固定为r-kvstore
        "<Endpoint>");     // 服务端地址
  3. 创建API请求并设置参数。
    下方代码以调用DescribeAccounts接口作为示例。
    DescribeAccountsRequest request = new DescribeAccountsRequest();
        request.setInstanceId("r-bp1xxxxxxxxxxxx");
  4. 发起请求并处理应答或异常。
    try {
        DescribeAccountsResponse response = client.getAcsResponse(request);
        System.out.println(new Gson().toJson(response));
    } catch (ServerException e) {
        e.printStackTrace();
    } catch (ClientException e) {
        System.out.println("ErrCode:" + e.getErrCode());
        System.out.println("ErrMsg:" + e.getErrMsg());
        System.out.println("RequestId:" + e.getRequestId());
    }

完整的示例代码

import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.exceptions.ServerException;
import com.aliyuncs.profile.DefaultProfile;
import com.google.gson.Gson;
import java.util.*;
import com.aliyuncs.r_kvstore.model.v20150101.*;

public class DescribeAccounts {

    public static void main(String[] args) {
        // 创建DefaultAcsClient实例并初始化
        DefaultProfile profile = DefaultProfile.getProfile(
            "cn-hangzhou",        // 地域ID
            "<accessKeyId>",      // RAM账号的AccessKey ID
            "<accessKeySecret>"); // RAM账号的AccessKey Secret
        IAcsClient client = new DefaultAcsClient(profile);
        // 设置地域和域名信息(可选)
        DefaultProfile.addEndpoint(
            "cn-hangzhou", // Endpoint名称,可自定义
            "cn-hangzhou", // 地域ID
            "r-kvstore",   // 产品编码,Redis的编码固定为r-kvstore
            "r-kvstore.aliyuncs.com"); // 服务端地址
        // 创建API请求并设置参数
        DescribeAccountsRequest request = new DescribeAccountsRequest();
        request.setInstanceId("r-bp1xxxxxxxxxxxx");
        // 发起请求并处理应答或异常
        try {
            DescribeAccountsResponse response = client.getAcsResponse(request);
            System.out.println(new Gson().toJson(response));
        } catch (ServerException e) {
            e.printStackTrace();
        } catch (ClientException e) {
            System.out.println("ErrCode:" + e.getErrCode());
            System.out.println("ErrMsg:" + e.getErrMsg());
            System.out.println("RequestId:" + e.getRequestId());
        }

    }
}