jdbc 如何获取hive中所有的数据库
时间: 2024-04-30 09:22:47 浏览: 60
jdbc连接hive数据库的驱动jar包
4星 · 用户满意度95%
要获取Hive中所有的数据库,可以使用JDBC API中的DatabaseMetaData类和getCatalogs()方法。具体步骤如下:
1. 加载Hive驱动程序并建立连接:
```
Class.forName("org.apache.hive.jdbc.HiveDriver");
Connection conn = DriverManager.getConnection("jdbc:hive2://localhost:10000/default", "", "");
```
2. 获取DatabaseMetaData对象:
```
DatabaseMetaData meta = conn.getMetaData();
```
3. 调用getCatalogs()方法获取所有数据库:
```
ResultSet rs = meta.getCatalogs();
while (rs.next()) {
String dbName = rs.getString("TABLE_CAT");
System.out.println(dbName);
}
```
其中,"TABLE_CAT"是ResultSet中获取数据库名称的列名。
完整代码如下:
```
import java.sql.*;
public class HiveDemo {
public static void main(String[] args) throws Exception {
Class.forName("org.apache.hive.jdbc.HiveDriver");
Connection conn = DriverManager.getConnection("jdbc:hive2://localhost:10000/default", "", "");
DatabaseMetaData meta = conn.getMetaData();
ResultSet rs = meta.getCatalogs();
while (rs.next()) {
String dbName = rs.getString("TABLE_CAT");
System.out.println(dbName);
}
rs.close();
conn.close();
}
}
```
阅读全文