Java 连接 Hive的样例程序及解析

以后编程基于这个样例可节省查阅API的时间。

 

private static String driverName = "org.apache.hadoop.hive.jdbc.HiveDriver";

try{

  Class.forName(driverName);//取得数据驱动,应用不同的数据驱动可以用不同的class路径。

}catch (ClassNotFoundException e){

  e.printStackTrack();//optional

  System.exit(1);//optional

}

 

Connection con  = DriverManager.getConnection("jdbc:hive://localhost:10000/default","","");

//DriverManager : The basic service for managing a set of JDBC drivers.

//所用方法的详细说明如下:

//在这里,subprotocol = "hive";

Statement stmt = con.createStatement();

//A Statement object represents a primitive statement in which a single method is applied to a target and a set of arguments .

//可用于执行不带参数的简单 SQL 语句

 

String tableName = "CustomerHiveTableJava";

// Table to be created;

ResultSet res = stmt.executeQuery("create table "+tableName+"(custid int, fname string,lname string) row format delimited fields terminated by ',' stored as textfile");

//ResultSet A table of data representing a database result set, which is usually generated by executing a statement that queries the database.

//show tables

String st = "show tables" + tableName +"";

System.out.println("Running :" + sql);

res = stmt.executeQuery(sql);//res记录所有返回的记录

if(res.next()){

  System.out.println(res.getString(1));

}

//Loading data into the table

String filepath = "/path";

sql = "load data local inpath"+filepath+"into table " + tableName;

System.out.println("Running :"+ sql);

posted @ 2015-10-17 12:50  夏末的秋千  阅读(767)  评论(0编辑  收藏  举报