hive教程1(groovy jdbc连接hive)

  1. 在idea上创建好maven项目,pom.xml这样配置

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    
    <groupId>hive</groupId>
    <artifactId>hive</artifactId>
    <packaging>pom</packaging>
    <version>1.0-SNAPSHOT</version>
    
    <dependencies>
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-common</artifactId>
            <version>2.6.5</version>
        </dependency>
        <dependency>
            <groupId>org.apache.hive</groupId>
            <artifactId>hive-jdbc</artifactId>
            <version>1.1.0</version>
        </dependency>
        <dependency>
            <groupId>org.codehaus.groovy</groupId>
            <artifactId>groovy-all</artifactId>
            <version>2.4.12</version>
        </dependency>
    </dependencies>
    </project>
  2. 新建一个groovy文件如下

    import groovy.sql.Sql
    import groovy.transform.CompileStatic
    
    @CompileStatic
    class TestHiveJdbc {
        static void main(String[] args) {
            String url = "jdbc:hive2://t2:10000/default"
            String user = "root"
            String password = ""
            String driverClassName = "org.apache.hive.jdbc.HiveDriver"
    
            Sql hiveJdbc = Sql.newInstance(url, user, password, driverClassName)
            hiveJdbc.eachRow("show tables", {
                println it
            })
        }
    }
  3. 运行代码,得到如下结果
    这里写图片描述

  4. 上面的代码运行某些sql会报错,比如return code 1 from org.apache.hadoop.hive.ql.exec等等,是因为权限不够,解决方法:

    String user = "hive"
    String password = "hive"

猜你喜欢

转载自blog.csdn.net/qq_40887813/article/details/80340044