Apache Tajo - JDBC 介面



Apache Tajo 提供 JDBC 介面來連線並執行查詢。我們可以使用相同的 JDBC 介面從基於 Java 的應用程式連線 Tajo。在本節中,讓我們瞭解如何使用 JDBC 介面在我們的示例 Java 應用程式中連線 Tajo 並執行命令。

下載 JDBC 驅動程式

訪問以下連結下載 JDBC 驅動程式:http://apache.org/dyn/closer.cgi/tajo/tajo-0.11.3/tajo-jdbc-0.11.3.jar

現在,“tajo-jdbc-0.11.3.jar”檔案已下載到您的計算機上。

設定類路徑

要在您的程式中使用 JDBC 驅動程式,請按如下方式設定類路徑:

CLASSPATH = path/to/tajo-jdbc-0.11.3.jar:$CLASSPATH 

連線到 Tajo

Apache Tajo 提供 JDBC 驅動程式作為單個 jar 檔案,它位於 @ /path/to/tajo/share/jdbc-dist/tajo-jdbc-0.11.3.jar

連線 Apache Tajo 的連線字串格式如下:

jdbc:tajo://host/
jdbc:tajo://host/database
jdbc:tajo://host:port/  
jdbc:tajo://host:port/database 

這裡:

  • host - TajoMaster 的主機名。

  • port - 伺服器正在監聽的埠號。預設埠號為 26002。

  • database - 資料庫名稱。預設資料庫名稱為 default。

Java 應用程式

讓我們瞭解一下 Java 應用程式。

編碼

import java.sql.*; 
import org.apache.tajo.jdbc.TajoDriver;  

public class TajoJdbcSample {  
   public static void main(String[] args) {  
      Connection connection = null; 
      Statement statement = null;  
      try {
         Class.forName("org.apache.tajo.jdbc.TajoDriver");  
         connection = DriverManager.getConnection(“jdbc:tajo:///default");
         statement = connection.createStatement(); 
         String sql;  
         sql = "select * from mytable”; 
         // fetch records from mytable.  
         ResultSet resultSet = statement.executeQuery(sql);  
         while(resultSet.next()){  
            int id  = resultSet.getInt("id"); 
            String name = resultSet.getString("name");  
            System.out.print("ID: " + id + ";\nName: " + name + "\n"); 
         }  
         resultSet.close();
         statement.close(); 
         connection.close(); 
      }catch(SQLException sqlException){ 
         sqlException.printStackTrace(); 
      }catch(Exception exception){ 
         exception.printStackTrace(); 
      } 
   } 
}

可以使用以下命令編譯和執行應用程式。

編譯

javac -cp /path/to/tajo-jdbc-0.11.3.jar:. TajoJdbcSample.java 

執行

java -cp /path/to/tajo-jdbc-0.11.3.jar:. TajoJdbcSample 

結果

以上命令將生成以下結果:

ID: 1; 
Name: Adam  

ID: 2; 
Name: Amit  

ID: 3; 
Name: Bob  

ID: 4; 
Name: David  

ID: 5; 
Name: Esha  

ID: 6; 
Name: Ganga 

ID: 7; 
Name: Jack  

ID: 8; 
Name: Leena  

ID: 9; 
Name: Mary  

ID: 10; 
Name: Peter
廣告
© . All rights reserved.