開發 - JDBC Driver

info

為了企業數據安全,我們在 CannerFlow 虛擬數據中台只能讓使用者 read-only 也就是目前僅支援 SELECT statement,不支援 Update, Delete 等操作。

Installation

你可以從下方連結下載 Jar

QuickStart Example

JDBC Driver 我們使用的是以 Presto 的 Driver 為底修改的 Driver,故 jdbc uri 的 driver 部分需填入 presto

String url = format("jdbc:presto://%s:%s/%s/%s", "example.apps.cannerflow.com", "443", "cannerflow", "<workspace sql name>");
Properties props = new Properties();
// 若為 standalone 環境,需設定 "standalone": true
props.setProperty("standalone", "true");
// 設定 user
props.setProperty("user", "cannerflow-admin");
// 設定 personal access token
props.setProperty("token", "<token>");
// 在此執行你的 SQL
try (Connection connection = DriverManager.getConnection(url, props);
Statement statement = connection.createStatement();
ResultSet rs = statement.executeQuery("select user_id from users"))
{
ResultSetMetaData metadata = rs.getMetaData();
// column count
int columnCount = metadata.getColumnCount();
for (int i = 1; i <= columnCount; i++ ) {
// print 出 column name 及 column type
System.out.println(metadata.getColumnName(i));
System.out.println(metadata.getColumnType(i));
}
while(rs.next()) {
// iterate ResultSet
System.out.println(rs.getInt("user_id"));
}
} catch (SQLException e) {
e.printStackTrace();
}