You need to enable JavaScript to run this app.
文档中心
云数据库 PostgreSQL 版

云数据库 PostgreSQL 版

复制全文
下载 pdf
V2(2022-01-01)
使用 Java SDK
复制全文
下载 pdf
使用 Java SDK
本文介绍云数据库 PostgreSQL 版 Java SDK 的下载、安装与初始化客户端的相关信息。​
下载与安装​
前提条件​
需要使用 Java JDK 1.7 或以上版本。更多详情,请参见 Java Downloads。​
说明​
您可以执行 java -version 命令检查当前 Java 的版本。​
SDK 下载地址​
云数据库 PostgreSQL 版的 Java SDK 源码地址,请参见 SDK 列表。​
安装 SDK​
配置 Maven 项目依赖。新建一个 Maven 项目,并在项目目录下的 pom.xml 中添加以下设置引入服务依赖。引入依赖后,Maven 项目管理工具会自动下载相关 JAR 包。​
说明​
如果您的 Java JDK 版本为 JDK 9 或以上版本,还需要额外添加 javax.annotation-api 依赖,请在 pom.xml 中添加以下内容。​
​
<dependency>​
<groupId>javax.annotation</groupId>​
<artifactId>javax.annotation-api</artifactId>​
<version>1.3.2</version>​
</dependency>​
​
​
<dependency>​
<groupId>com.volcengine</groupId>​
<artifactId>volcengine-java-sdk-rdspostgresql</artifactId>​
<version>0.1.157</version>​
</dependency>​
​
初始化客户端​
前提条件​
  • 已获取账号的 Access Key ID(简称 AK)和 Secret Access Key(简称 SK)信息。具体操作,请参见 Access Key 管理。​
  • 已获取云数据库 PostgreSQL 版支持的 Region,请参见服务地址。​
  • 已下载并安装云数据库 PostgreSQL 版 Java SDK。具体操作步骤,请参见下载与安装。​
初始化客户端​
使用以下代码初始化客户端。​
​
package org.example;​
​
import com.volcengine.*;​
import com.volcengine.sign.Credentials;​
import com.volcengine.rdspostgresql.RdsPostgresqlApi;​
import com.volcengine.rdspostgresql.model.*;​
​
public class Main {​
// 设置 AKSK 验证信息及 Regionpublic static String ak = "Your AK";​
public static String sk = "Your SK";​
public static String region = "Your Region";​
public static String host = "Your Host";​
// 创建一个 RDS PostgreSQL SDK 客户端,后续可以利用此客户端调用 API 执行任务请求public static ApiClient apiClient = new ApiClient()​
.setCredentials(Credentials.getCredentials(ak, sk))​
.setRegion(region)​
.setEndpoint(host);​
public static RdsPostgresqlApi rdsPostgresql = new RdsPostgresqlApi(apiClient);​
}​
​
代码示例​
请求超时时间设置​
使用 SDK 调用 PostgreSQL 接口时,默认无超时时间限制。您可以在发起接口调用请求时,在代码的最后加上 _request_timeout 参数来指定请求的超时时间(单位:秒),若未在该时间内完成,请求即会终止并报超时错误。例如,您可以在调用 DescribeDBInstances 接口时,通过以下代码将超时时间设置为 10 秒。​
​
public static ApiClient apiClient = new ApiClient()​
.setCredentials(Credentials.getCredentials(ak,sk))​
.setRegion(region)​
.setConnectTimeout(10);​
​
创建 PostgreSQL 实例​
关于下述 SDK 代码中所使用参数的定义、取值范围等信息,请参见 CreateDBInstances。​
​
package org.example;​
​
import com.volcengine.*;​
import com.volcengine.sign.Credentials;​
import com.volcengine.rdspostgresql.RdsPostgresqlApi;​
import com.volcengine.rdspostgresql.model.*;​
import java.util.ArrayList;​
import java.util.List;​
​
public class Main {​
// 设置 AKSK 验证信息及 Regionpublic static String ak = "Your AK";​
public static String sk = "Your SK";​
public static String region = "Your Region";​
public static String host = "Your Host";​
// 创建一个 RDS PostgreSQL SDK 客户端,后续可以利用此客户端调用 API 执行任务请求public static ApiClient apiClient = new ApiClient()​
.setCredentials(Credentials.getCredentials(ak, sk))​
.setRegion(region)​
.setEndpoint(host)​
.setConnectTimeout(10);​
public static RdsPostgresqlApi rdsPostgresql = new RdsPostgresqlApi(apiClient);​
​
// 创建一个接口入参,并根据需要调用接口的参数说明配置来设置接口入参public static void main(String[] args) throws Exception {​
List<NodeInfoForCreateDBInstanceInput> nodesInfo = new ArrayList<>();​
NodeInfoForCreateDBInstanceInput primaryNodeInfo = new NodeInfoForCreateDBInstanceInput();​
primaryNodeInfo.setNodeType("Primary");​
primaryNodeInfo.setZoneId("cn-beijing-c");​
primaryNodeInfo.setNodeSpec("rds.postgres.1c2g");​
NodeInfoForCreateDBInstanceInput secondaryNodeInfo = new NodeInfoForCreateDBInstanceInput();​
secondaryNodeInfo.setNodeType("Secondary");​
secondaryNodeInfo.setZoneId("cn-beijing-c");​
secondaryNodeInfo.setNodeSpec("rds.postgres.1c2g");​
nodesInfo.add(primaryNodeInfo);​
nodesInfo.add(secondaryNodeInfo);​
​
ChargeInfoForCreateDBInstanceInput chargeInfo = new ChargeInfoForCreateDBInstanceInput();​
chargeInfo.setChargeType("PostPaid");​
​
CreateDBInstanceRequest request = new CreateDBInstanceRequest();​
request.setInstanceName("pg-test-sdk-java");​
request.setDbEngineVersion("PostgreSQL_12");​
request.setStorageType("LocalSSD");​
request.setStorageSpace(30);​
request.setVpcId("vpc-2bzo8w6m87v282dx0eemg****");​
request.setSubnetId("subnet-2d6b6byrhtts058ozfenq****");​
request.setNodeInfo(nodesInfo);​
request.setChargeInfo(chargeInfo);​
​
// 调用接口完成接口所对应的操作try {​
CreateDBInstanceResponse response = rdsPostgresql.createDBInstance(request);​
System.out.println(response);​
} catch (ApiException e) {​
System.out.println(e.getResponseBody());​
}​
}​
}​
​
本示例中的参数说明如下表所示。​
​
配置项​
说明​
取值​
DBEngineVersion​
兼容版本。​
PostgreSQL_12​
NodeInfo​
实例规格配置。​
[​
{​
"NodeType": "Primary",​
"ZoneId": "cn-beijing-c",​
"NodeSpec": "rds.postgres.1c2g"​
},​
{​
"NodeType": "Secondary",​
"ZoneId": "cn-beijing-c",​
"NodeSpec": "rds.postgres.1c2g"​
}​
]​
StorageType​
实例存储类型。​
LocalSSD​
StorageSpace​
实例存储空间。​
30​
VpcId​
专有网络(VPC) ID。​
vpc-2bzo8w6m87v282dx0eemg****​
SubnetId​
子网 ID。​
subnet-2d6b6byrhtts058ozfenq****​
InstanceName​
实例名称。​
pg-test-sdk-java​
ChargeInfo​
计费类型。​
{​
"ChargeType": "PostPaid"​
}​
​
查询 PostgreSQL 实例信息​
关于下述 SDK 请求中所使用的参数的定义、取值范围等信息,请参见 DescribeDBInstanceDetail。​
​
package org.example;​
import com.volcengine.*;​
import com.volcengine.sign.Credentials;​
import com.volcengine.rdspostgresql.RdsPostgresqlApi;​
import com.volcengine.rdspostgresql.model.*;​
​
public class Main {​
// 设置 AKSK 验证信息及 Region​
public static String ak = "Your AK";​
public static String sk = "Your SK";​
public static String region = "Your Region";​
public static String host = "Your Host";​
// 创建一个 RDS PostgreSQL SDK 客户端,后续可以利用此客户端调用 API 执行任务请求​
public static ApiClient apiClient = new ApiClient()​
.setCredentials(Credentials.getCredentials(ak, sk))​
.setRegion(region)​
.setEndpoint(host)​
.setConnectTimeout(10);​
public static RdsPostgresqlApi rdsPostgresql = new RdsPostgresqlApi(apiClient);​
​
// 创建一个接口入参,并根据需要调用接口的参数说明配置来设置接口入参​
public static void main(String[] args) throws Exception {​
DescribeDBInstanceDetailRequest request = new DescribeDBInstanceDetailRequest();​
// 调用接口完成接口所对应的操作​
try {​
DescribeDBInstanceDetailResponse response = rdsPostgresql.describeDBInstanceDetail(request);​
System.out.println(response);​
} catch (ApiException e) {​
System.out.println(e.getResponseBody());​
}​
}​
}​
​
​
最近更新时间:2025.11.17 20:06:01
这个页面对您有帮助吗?
有用
有用
无用
无用