hive的jdbc使用

纠正网上一些hive-jdbc的使用方法。

说明:网上一些文章基本都是抄来抄去的。很不规整。jdbc本身不需要引用hadoop的jar包。因为所有jdbc的使用都是通过java的spi机制构建的。这就是为什么在使用hive-jdbc时要先将hive的类名写出来。所有的jdbc都是共用一套链接方式,只不过对于数据集的处理需要不同的驱动进行,这些驱动创建的对象就是通过spi机制反射出来的。

重点:1.表的信息获取 2.表字段数据如何获取

注意:hive的jdbc需要使用日志系统来读取数据,所以在resources文件夹中保存一个log4j2.properties文件。

//hive的jdbc maven地址,注意版本要对应
<dependency>
            <groupId>org.apache.hive</groupId>
            <artifactId>hive-jdbc</artifactId>
            <version>3.1.2</version>
</dependency>
import java.sql.*;

public class num1 {
    public static  String url = "jdbc:hive2://xxx.xxx.xxx.xxx:10000";
    public static  String driverName = "org.apache.hive.jdbc.HiveDriver";
    public static  String u = "";
    public static  String p = "";

    //jdbc使用的spi机制创建的对象
    //hive的jdbc需要使用到log4j2.properties进行获取数据
    //maven中的引用只需要hive的jdbc即可,其他的都不需要。

    public static void main(String[] args) throws SQLException, ClassNotFoundException {
        //因为使用spi机制,需要把使用的jdbc类告诉给类加载器。
        Class.forName(driverName);
        //统一使用java自带的连接器去连接,然后通过多态的形式将对象赋给hive的jdbc进行使用。
        Connection connection = DriverManager.getConnection(url, user, password);
        //创建状态。
        Statement statement = connection.createStatement();
        //状态提交sql返回一个ResultSet,这个ResultSet保存在返回数据的所有信息。
        ResultSet show_databases = statement.executeQuery("select * from shijianqi.users");
        //Metastore里面存储着表中列的所有信息
        ResultSetMetaData metaData = show_databases.getMetaData();
        //例如获取列的个数
        System.out.println(metaData.getColumnCount());
        //使用迭代器的方式获取所有行的信息,注意第一个result是空的。必须要先移动一位才能拿到数据。
        //列的数据也要从1开始获取。
        while (show_databases.next()){
                   for(int i=0;i<metaData.getColumnCount();i++){
                System.out.print(show_databases.getString(i+1) + " \t");
            }
            System.out.println("");
        }

    }
}

注意日志的配置文件

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Hive-JDBC Uber Jar 是一个包含了所有依赖项的单一 JAR 文件,使得使用 Hive JDBC 连接数据库更加方便。为了下载 hive-jdbc-uber-jar,您可以按照以下步骤进行操作: 1. 打开您的网络浏览器并访问 Apache Hive 的官方网站(https://hive.apache.org/)。 2. 在页面的顶部菜单栏中,您会找到一个"Downloads"(下载)的选项。单击这个选项。 3. 在下载页面上,您可以看到不同的 Hive 版本和相关的下载链接。根据您的需求选择适合的版本。一般建议选择最新版本。 4. 找到并单击下载链接,以启动 hive-jdbc-uber-jar 文件的下载。可以选择一个合适的下载镜像,点击相关链接即可开始下载。 5. 下载完成后,您可以在您指定的下载文件夹中找到 hive-jdbc-uber-jar 文件。可以通过文件管理器打开文件夹并查看文件。 在您下载了 hive-jdbc-uber-jar 文件后,您可以将其添加到您的项目中,并使用 HiveJDBC API 连接到 Hive 数据库。您可以在项目的构建路径中添加该 JAR 文件,并在代码中引入相关的类和方法。确保在代码中正确配置 JDBC 连接参数,如 Hive 服务器的 URL、用户名和密码等。 总结起来,您可以通过在 Apache Hive 官方网站下载页面上选择适当的 Hive 版本并点击相关的下载链接,从中直接下载 hive-jdbc-uber-jar 文件。这个 JAR 文件是使用 Hive JDBC 连接到 Hive 数据库时所需的所有依赖项的集合。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值