Hive JDBC

Hive的jdbc编程

hive实现了jdbc接口,所以可以通过java代码操作。但是实际应用中用的不多,一般都是在HDFS储存的文件基础上建立外部表来进行查询处理。

实现步骤

1.在服务器端开启HiveServer服务
./hive --service hiveserver2  &  (以后台线程启动)

2.创建本地工程,导入jar包
导入hive\lib目录下的hive-jdbc-1.2.0-standalone.jar
导入hadoop-2.7.1\share\hadoop\common下的hadoop-common-2.7.1.jar

3.编写jdbc代码执行
代码示例:
/*
 * 连接和查询
 */
@Test
public void testConnectAndQuery() throws Exception {
    //注册数据库驱动,用的hive的jdbc,驱动名固定写死
    Class.forName("org.apache.hive.jdbc.HiveDriver");
    //如果用的是hive2服务,则写jdbc:hive2,后面跟上hive服务器的ip以及端口号,端口号默认是10000
    Connection conn = DriverManager.getConnection("jdbc:hive2://192.168.234.21:10000/park","root","root");
    Statement stat = conn.createStatement();
    ResultSet rs = stat.executeQuery("select * from stu");
    while(rs.next()){
        String name = rs.getString("name");
        System.out.println(name);
    }
    
    stat.close();
    conn.close();
}
    /*
     * 利用executeUpdate()方法是实现建表的创建、插入数据及删除表
     */
    @Test
    public void testInsert() throws Exception{
        Class.forName("org.apache.hive.jdbc.HiveDriver");
        Connection conn = DriverManager.getConnection("jdbc:hive2://192.168.234.21:10000/park","root","root");
        Statement stat = conn.createStatement();
        //executeUpdate可用于:创建表,向表中插入数据以及删除表
        stat.executeUpdate("insert into table stu values(2,'rose')");
        stat.executeUpdate("create table stu2(id int,name string) row format delimited fields terminated by ' '");
        stat.executeUpdate("drop table stu2");
        
        
        stat.close();
        stat.close();
    }
 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值