码迷,mamicode.com
首页 > 数据库 > 详细

java程序连接hive数据库遇到的问题

时间:2018-10-04 21:34:00      阅读:265      评论:0      收藏:0      [点我收藏+]

标签:学习   jdb   creates   nec   color   apach   import   ext   今天   

今天,打算学习一下用hadoop做后台,搭建一个网站,首先第一步便是在本机的eclipse中连接到虚拟机上的hive中,原本以为很简单,但是过程很是艰难。特意做总结

 

首先hive的版本问题就是一个很大的问题,刚开始没注意到这个问题,走了很大的弯路,hive1.0是一个分水岭,在1.之前的连接hive的代码应该这样写

Class.forName("org.apache.hive.jdbc.HiveDriver");
          Connection connection = DriverManager.getConnection("jdbc:hive://192.168.252.200:10000/default", "", "");

在1.0之后就应该是hive2l了,代码如下:

Class.forName("org.apache.hive.jdbc.HiveDriver");
          Connection connection = DriverManager.getConnection("jdbc:hive2://192.168.252.200:10000/default", "", "");

具体的代码如下:

package cn.itcast.bigdata;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class Test {
    public static void main(String[] args) throws Exception {
        
          Class.forName("org.apache.hive.jdbc.HiveDriver");
          Connection connection = DriverManager.getConnection("jdbc:hive2://192.168.252.200:10000/default", "", "");
          Statement stmt = connection.createStatement();
          String querySQL="select * from default.tb1";
          ResultSet resut = stmt.executeQuery(querySQL);
          while (resut.next()) {
              System.out.println(resut.getInt(1));
          }    
    }
      
  }

在运行代码之前,应该在虚拟机开启hiveserver2服务,这样才可以建立连接,否则会出现连接被中断的情况

具体命令是进入虚拟机的hive的安装目录下,键入命令  ./bin/hiveserver2,这样就可以与本地建立连接了

java程序连接hive数据库遇到的问题

标签:学习   jdb   creates   nec   color   apach   import   ext   今天   

原文地址:https://www.cnblogs.com/ljysy/p/9743339.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!