我是Hadoop和生态系统的新手。我在Java中尝试使用JDBC的Hive。这是我的简单代码,仅用于测试驱动程序:
import java.sql.DriverManager;
import java.sql.SQLException;
public class PrepareHiveTable {
private static String driverName = "org.apache.hive.jdbc.HiveDriver";
public static void main(String[] args) throws ClassNotFoundException, SQLException {
Class.forName(driverName);
Connection con = DriverManager.getConnection("jdbc:hive://localhost:10000/default", "", "");
}
}我已经将org.apache.hive.jdbc.HiveDriver导入到类路径中,这是我的DriverManager上的驱动程序列表
org.apache.calcite.avatica.remote.Driver@45ff54e6
org.apache.calcite.jdbc.Driver@3581c5f3
org.apache.derby.jdbc.AutoloadedDriver40@4f8e5cde
com.mysql.jdbc.Driver@6f75e721
org.apache.hive.jdbc.HiveDriver@69222c14但是当我运行代码时,我得到了这个错误:
Exception in thread "main" java.sql.SQLException: No suitable driver found for
jdbc:hive://localhost:10000/default
at java.sql.DriverManager.getConnection(DriverManager.java:689)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at PrepareHiveTable.main(PrepareHiveTable.java:24)
Java Result: 1在座有人知道这是怎么发生的吗?如何解决这个问题?
发布于 2015-11-16 01:29:24
我找到了解决方案。我使用的是hive 1.2.1,因此需要编写jdbc:hive2://localhost:10000/default而不是jdbc:hive://localhost:10000/default
谢谢
发布于 2018-02-14 14:04:20
我正在使用hive-jdbc-1.0.0.jar,并且我成功地建立了到hive db的连接。我还分享了我在这里使用的其他细节。
驱动程序名称:org.apache.hive.jdbc.HiveDriver
网址:("jdbc:hive2://localhost:10000/default","username","password")
下面是我在我的java项目的hive db项目中使用的所有jar。

https://stackoverflow.com/questions/33722139
复制相似问题