Impala 4、Impala JDBC

时间:2023-03-09 01:20:27
Impala 4、Impala JDBC

• 配置:
  – impala.driver=org.apache.hive.jdbc.HiveDriver
  – impala.url=jdbc:hive2://node2:21050/;auth=noSasl
  – impala.username=
  – impala.password=
• 尽量使用PreparedStatement执行SQL语句:
  – 1.性能上PreparedStatement要好于Statement
  – 2.Statement存在查询不出数据的情况

下面是Java的测试代码:

  首先是引入Impala所需要的类库

  Impala 4、Impala JDBC

  然后是测试代码:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.junit.Test;
public class demo {
public static Connection getConnection() throws ClassNotFoundException, SQLException{
String driver = "org.apache.hive.jdbc.HiveDriver";
String url = "jdbc:hive2://node23:21050/;auth=noSasl";
String username = "";
String password = "";
Connection conn = null;
Class.forName(driver);
conn = (Connection) DriverManager.getConnection(url,username,password);
return conn;
}
@Test
public void select() throws ClassNotFoundException, SQLException{
Connection conn = getConnection();
String sql = "select * from t_stu;";
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
int col = rs.getMetaData().getColumnCount();
System.out.println("=====================================");
while (rs.next()){
for(int i=1;i<=col;i++){
System.out.print(rs.getString(i)+"\t");
}
System.out.print("\n");
}
System.out.println("=====================================");
}
}

  最后是测试结果:

  Impala 4、Impala JDBC