快速入门

在这里,我们将简要介绍使用 PostgreSQL Java 驱动程序的 ADBC 基本功能。

安装

要在您的 Maven 项目中包含 ADBC,请添加以下依赖项

<dependency>
    <groupId>org.apache.arrow.adbc</groupId>
    <artifactId>adbc-driver-jdbc</artifactId>
    <version>${adbc.version}</version>
</dependency>

对于本节中的示例,需要以下导入

import org.apache.arrow.adbc.core.AdbcConnection;
import org.apache.arrow.adbc.core.AdbcDatabase;
import org.apache.arrow.adbc.core.AdbcDriver;
import org.apache.arrow.adbc.core.AdbcException;
import org.apache.arrow.adbc.core.AdbcStatement;

JDBC 风格的 API

ADBC 提供了一个类似于 JDBC 标准的高级 API。

用法

final Map<String, Object> parameters = new HashMap<>();
parameters.put(AdbcDriver.PARAM_URL, "jdbc:postgresql://127.0.0.1:5432/postgres");
try (
    BufferAllocator allocator = new RootAllocator();
    AdbcDatabase db = new JdbcDriver(allocator).open(parameters);
    AdbcConnection adbcConnection = db.connect();
    AdbcStatement stmt = adbcConnection.createStatement()

) {
    stmt.setSqlQuery("select * from foo");
    AdbcStatement.QueryResult queryResult = stmt.executeQuery();
    while (queryResult.getReader().loadNextBatch()) {
        // process batch
    }
}  catch (AdbcException e) {
    // throw
}

在应用程序代码中,必须在使用后关闭连接,否则可能会导致内存泄漏。建议将连接包装在 try-with-resources 块中以进行自动资源管理。在此示例中,我们正在连接到 PostgreSQL 数据库,具体是默认数据库“postgres”。

请注意,创建语句也包装在 try-with-resources 块中。假设数据库中有一个表“foo”,还提供了设置和执行查询的示例。