SpringBoot - 使用hive-jdbc操作Impala教程(附样例)
作者:hangge | 2024-10-30 08:30
如果想要在某一个 Web 项目中提供基于 Impala 的即席查询功能,那么需要使用 JDBC 代码的方式操作 Impala。本文演示如何在 SpirngBoot 项目中集成 hive-jdbc 来操作 Impala。
(2)控制台输出如下内容,说明连接并操作 Impala 成功:
1,准备工作
在 Spring Boot 项目的 pom.xml 文件中添加 hive-jdbc 依赖:
<!-- Hive JDBC 依赖 -->
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-jdbc</artifactId>
<version>3.1.2</version>
</dependency>
2,编写代码
我们便写如下测试代码,利用 JDBC 操作 Impala 进行表的创建、数据插入、以及数据查询操作:
@RestController
public class HelloController {
@GetMapping("/test")
public void test() throws Exception {
//指定 jdbcurl 链接,需要连接到 impalad 服务
String jdbcUrl = "jdbc:hive2://192.168.121.130:21050/;auth=noSasl";
//获取链接
Connection conn = DriverManager.getConnection(jdbcUrl);
//获取 Statement
Statement stmt = conn.createStatement();
// 创建表
String createTableSQL = "CREATE TABLE IF NOT EXISTS t3 (id INT, name STRING)";
stmt.executeUpdate(createTableSQL);
// 插入测试数据
String insertDataSQL = "INSERT INTO t3 (id, name) " +
"VALUES (1, 'hangge'), (2, 'lilei'), (3, 'bob')";
stmt.executeUpdate(insertDataSQL);
// 查询数据
String querySQL = "SELECT * FROM t3";
ResultSet res = stmt.executeQuery(querySQL);
// 循环读取结果
while (res.next()) {
System.out.println(res.getInt("id") + "\t" + res.getString("name"));
}
}
}
3,运行测试
(1)启动服务,首先访问如下接口:
http://localhost:8080/test
(2)控制台输出如下内容,说明连接并操作 Impala 成功:

全部评论(0)