Hive JDBC

Hive远程模式搭建好之后,可以使用Beeline客户端或JDBC远程访问Hive了

启动HiveServer2服务

bash 复制代码
$ hive --service hiveserver2 &

新建Java Maven项目,在pom.xml中添加以下依赖

XML 复制代码
    <dependencies>
        <dependency>
            <groupId>jdk.tools</groupId>
            <artifactId>jdk.tools</artifactId>
            <version>1.8</version>
            <scope>system</scope>
            <systemPath>${JAVA_HOME}/lib/tools.jar</systemPath>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.apache.hbase/hbase-mapreduce -->
        <dependency>
            <groupId>org.apache.hive</groupId>
            <artifactId>hive-jdbc</artifactId>
            <version>2.3.9</version>
        </dependency>

    </dependencies>

编写JDBC程序

主要分五个步骤:

1.加载JDBC驱动

使用Class.forName()加载JDBC驱动

2.获取连接

使用DriverManager驱动管理类获取Hive连接

3.执行查询

通过Statement对象的executeQuery()方法执行查询命令

4.处理结果集

通过ResultSet对象获取返回的结果。ResultSet是JDBC用于装载返回数据的类。

5.关闭连接

关闭连接,释放资源

java 复制代码
package org.example;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

/**
 * Hive JDBC 测试类
 */
public class HiveJDBCTest {
    public static void main(String[] args) throws Exception{
        // 驱动名称
        String driver = "org.apache.hive.jdbc.HiveDriver";
        // 连接地址,默认使用端口10000
        String url = "jdbc:hive2://192.168.153.133:10000/test_db";
        // 用户名(Hadoop集群的登录用户)
        String username = "hadoop";
        // 密码
        String password = "";
        // 1.接在JDBC裙动
        Class.forName(driver);
        // 2.获取连接
        Connection conn = DriverManager.getConnection(url, username, password);
        Statement stmt = conn.createStatement();
        // 3.执行查询
        ResultSet res = stmt.executeQuery("select * from t_user");
        // 4.处理结果
        while(res.next()){
            System.out.println(res.getInt(1) + "\t" + res.getString(2));
        }
        // 5.关闭连接
        res.close();
        stmt.close();
        conn.close();
    }
}
相关推荐
计算机源码社3 小时前
分享一个基于大数据的跨平台内容生态画像与互动等级分析系统,基于Hadoop+Spark的社交媒体互动数据可视化大屏分析
大数据·hadoop·python·机器学习·数据挖掘·spark·毕业设计
BYSJMG7 小时前
计算机毕设选题做什么好?基于大数据的用户健身行为数据分析与可视化系统,Hadoop+Spark处理
大数据·人工智能·hadoop·数据分析·spark·课程设计
ha_lydms18 小时前
HDFS 简介
大数据·hadoop·hdfs·yarn·调度·aliyun·计算
2601_9622980920 小时前
零基础学大数据分析全栈
hadoop·python·spark·实战·大数据分析
lhldsg1 天前
幼儿托管系统开发实战指南:从需求分析到架构设计全流程解析
数据库·数据仓库·需求分析
ha_lydms1 天前
HDFS的读写流程
大数据·hadoop·hdfs·mapreduce·yarn·maxcompute·odps
BYSJMG2 天前
大数据毕业设计选题推荐:基于大数据的全球气温历史演变分析与可视化,用Hadoop+Spark处理
大数据·hadoop·分布式·信息可视化·spark·kmeans·课程设计
fastjson_2 天前
Hive 自定义函数
数据仓库·hive·hadoop
Gent_倪2 天前
MySQL 与 Hive 语法异同点详解
数据库·hive·mysql
lhldsg3 天前
智慧场馆解决方案软件开发实战:从需求分析到落地部署全流程
数据库·数据仓库·需求分析