本文介绍如何使用云数据库MongoDB的Java开发者工具包(SDK),并提供示例供您参考。
前提条件
已经创建了AccessKey,创建方法请参见创建AccessKey。
警告为避免阿里云账号泄露AccessKey带来的安全风险,建议您创建RAM用户,然后授予RAM用户云数据库MongoDB相关的访问权限,再使用RAM用户的AccessKey调用SDK。详情请参见账号访问控制。
已下载云数据库MongoDB版的SDK安装包,详情请参见SDK下载。
安装方法
安装方法请参见安装Alibaba Cloud SDK for Java。
请求步骤
设置地域和AK信息。
IClientProfile profile = DefaultProfile.getProfile("<RegionId>","<accessKeyId>","<accessSecret>");
说明<RegionId>:地域ID。
<accessKeyId>: RAM用户的AccessKey ID。
<accessSecret>:RAM用户的AccessKey Secret。
可选:设置Endpoint信息。
Endpoint是阿里云服务的API服务端地址。针对不同的地域,单个服务可能有不同的Endpoint。阿里云SDK内置了Endpoint寻址模块,当您调用SDK对一个服务发起请求时,SDK会自动根据您在创建SDK Client时指定的地域ID(Region ID)和产品ID来找到Endpoint,所以该步骤为可选。各地域的Endpoint信息请参见服务地址。
DefaultProfile.addEndpoint("<endpointName>","<RegionId>", "dds", "<domain>");
初始化客户端。
DefaultAcsClient client = new DefaultAcsClient(profile);
创建API请求并设置参数。
下述代码以DescribeAccounts(查询test账号信息)为例。
DescribeAccountsRequest request = new DescribeAccountsRequest(); request.setDBInstanceId("dds-bp19f409d7512****"); request.setAccountName("test");
调用返回结果。
DescribeAccountsResponse response = client.getAcsResponse(request);
请求示例
import com.alibaba.fastjson.JSON;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.dds.model.v20151201.DescribeAccountsRequest;
import com.aliyuncs.dds.model.v20151201.DescribeAccountsResponse;
import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.profile.IClientProfile;
public class ApiDescribeAccountsTest {
public static void main(String[] args_){
IClientProfile profile = DefaultProfile.getProfile("cn-qingdao", "********", "**********");
//初始化客户端
DefaultAcsClient client = new DefaultAcsClient(profile);
DescribeAccountsRequest request = new DescribeAccountsRequest();
request.setDBInstanceId("dds-bp19f409d7512****");
request.setAccountName("test");
try {
DescribeAccountsResponse response = client.getAcsResponse(request);
String s = JSON.toJSONString(response);
System.out.println(s);
}
catch (Exception e) {
e.printStackTrace();
}
}
}
返回示例
{"accounts":[{"accountName":"test","accountStatus":"Available","dBInstanceId":"dds-bp19f409d7512****"}],"requestId":"4D********-9640ED88F3C4"}