本文為您介紹如何安裝并使用Hologres SDK for Java。
在線調試和生成SDK示例
OpenAPI門戶提供在線調用云產品API、動態生成SDK示例代碼和快速檢索接口等功能,可以顯著降低使用API的難度。
前提條件
已創建AccessKey,詳情請參見創建AccessKey。
已安裝Java環境。Hologres SDK for Java要求使用JDK1.6或更高版本。
授予賬號相應權限,詳情請參見授予RAM用戶權限。
安裝Alibaba Cloud SDK for Java
您可以通過添加Maven依賴或者其他方式導入依賴,詳細說明請參見其他方式和開始使用。
說明
通過Maven下載SDK包時,請下載最新版本。
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>hologram20220601</artifactId>
<version>1.0.5</version>
</dependency>
請求步驟
導入相關產品的SDK。
import com.aliyun.tea.*; import com.aliyun.hologram20220601.*;
設置AccessKey和域名,域名詳情請參見Hologres服務區域列表。
說明建議使用環境變量的方式調用用戶名和密碼,降低密碼泄露風險。
Config config = new Config() // 您的AccessKey ID .setAccessKeyId(System.getenv("ALIBABA_CLOUD_USER")) // 您的AccessKey Secret .setAccessKeySecret(System.getenv("ALIBABA_CLOUD_PASSWORD")); // 訪問的域名 config.endpoint = "hologram.cn-hangzhou.aliyuncs.com";
新建AcsClient。
Client client = new Client(config);
創建Request對象,并設置請求參數。
GetInstanceRequest request = new GetInstanceRequest();
調用返回結果。
GetInstanceResponse response = client.getInstance("your_instance_id", request); System.out.println(JSON.toJSONString(response.getBody()));
參考示例
查詢實例詳情請求示例(適用于1.0.3及以上版本):
package com.aliyun.sample;
import com.aliyun.hologram20220601.models.GetInstanceResponse;
import com.aliyun.hologram20220601.models.GetInstanceResponseBody;
import com.aliyun.tea.*;
import com.aliyun.hologram20220601.*;
public class Sample {
/**
* 使用AK&SK初始化賬號Client
* @param accessKeyId
* @param accessKeySecret
* @return Client
* @throws Exception
*/
public static Client createClient(String accessKeyId, String accessKeySecret) throws Exception {
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
// 必填,您的 AccessKey ID
.setAccessKeyId(accessKeyId)
// 必填,您的 AccessKey Secret
.setAccessKeySecret(accessKeySecret);
// 訪問的域名
config.endpoint = "hologram.cn-hangzhou.aliyuncs.com";
return new Client(config);
}
public static void main(String[] args_) throws Exception {
java.util.List<String> args = java.util.Arrays.asList(args_);
// 請確保代碼運行環境設置了環境變量 ALIBABA_CLOUD_USER 和 ALIBABA_CLOUD_PASSWORD。
// 工程代碼泄露可能會導致 AccessKey 泄露,并威脅賬號下所有資源的安全性。以下代碼示例使用環境變量獲取 AccessKey 的方式進行調用,僅供參考,建議使用更安全的 STS 方式。
Client client = Sample.createClient(System.getenv("ALIBABA_CLOUD_USER"),
System.getenv("ALIBABA_CLOUD_PASSWORD"));
try {
// 復制代碼運行請自行打印 API 的返回值
client.getInstance("instanceId");
} catch (TeaException error) {
// 如有需要,請打印 error
com.aliyun.teautil.Common.assertAsString(error.message);
} catch (Exception _error) {
TeaException error = new TeaException(_error.getMessage(), _error);
// 如有需要,請打印 error
com.aliyun.teautil.Common.assertAsString(error.message);
}
}
}
返回結果示例:
{
"RequestId": "1E8EFA1E-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"Instance": {
"SuspendReason": "",
"ZoneId": "cn-hangzhou-h",
"InstanceId": "hgpostcn-cn-xxxxxxxxxxxx",
"InstanceChargeType": "PostPaid",
"Memory": 64,
"InstanceOwner": "123xxxxxxxxxxxx",
"ColdStorage": 0,
"Cpu": 16,
"EnableHiveAccess": false,
"InstanceName": "xxxx",
"ComputeNodeCount": 1,
"Endpoints": [
{
"Type": "Intranet",
"Endpoint": "hgpostcn-cn-xxxxxxxxxxxx-cn-hangzhou-internal.hologres.aliyuncs.com:80",
"Enabled": true
},
{
"Type": "VPCSingleTunnel",
"Endpoint": "hgpostcn-cn-xxxxxxxxxxxx-cn-hangzhou-vpc-st.hologres.aliyuncs.com:80",
"VpcId": "vpc-xxxxxxxxxxxxxxxx",
"VSwitchId": "vsw-xxxxxxxxxxxxxxxx",
"Enabled": true,
"VpcInstanceId": "hgpostcn-cn-xxxxxxxxxxxx-frontend-st"
}
],
"AutoRenewal": false,
"Version": "r1.3.43",
"InstanceStatus": "Running",
"CommodityCode": "hologram_postpay_public_cn",
"CreationTime": "2023-04-12T03:41:59.036Z",
"InstanceType": "Standard",
"Disk": 0,
"Tags": [
{
"Value": "rg-xxxxxxxxxxxx",
"Key": "acs:rm:rgId"
}
]
},
"HttpStatusCode": 200,
"Success": true
}
文檔內容是否對您有幫助?