import
java.sql.SQLException;
import
java.sql.Connection;
import
java.sql.ResultSet;
import
java.sql.Statement;
import
java.sql.DriverManager;
public
class
HiveJdbcClient {
private
static
String driverName =
"org.apache.hadoop.hive.jdbc.HiveDriver"
;
/**
* @param args
* @throws SQLException
*/
public
static
void
main(String[] args)
throws
SQLException {
try
{
Class.forName(driverName);
}
catch
(ClassNotFoundException e) {
e.printStackTrace();
System.exit(
1
);
}
Connection con = DriverManager.getConnection(
"jdbc:hive://localhost:10000/default"
,
""
,
""
);
Statement stmt = con.createStatement();
String tableName =
"testHiveDriverTable"
;
stmt.executeQuery(
"drop table "
+ tableName);
ResultSet res = stmt.executeQuery(
"create table "
+ tableName +
" (key int, value string)"
);
String sql =
"show tables '"
+ tableName +
"'"
;
System.out.println(
"Running: "
+ sql);
res = stmt.executeQuery(sql);
if
(res.next()) {
System.out.println(res.getString(
1
));
}
sql =
"describe "
+ tableName;
System.out.println(
"Running: "
+ sql);
res = stmt.executeQuery(sql);
while
(res.next()) {
System.out.println(res.getString(
1
) +
"\t"
+ res.getString(
2
));
}
String filepath =
"/tmp/a.txt"
;
sql =
"load data local inpath '"
+ filepath +
"' into table "
+ tableName;
System.out.println(
"Running: "
+ sql);
res = stmt.executeQuery(sql);
sql =
"select * from "
+ tableName;
System.out.println(
"Running: "
+ sql);
res = stmt.executeQuery(sql);
while
(res.next()) {
System.out.println(String.valueOf(res.getInt(
1
)) +
"\t"
+ res.getString(
2
));
}
sql =
"select count(1) from "
+ tableName;
System.out.println(
"Running: "
+ sql);
res = stmt.executeQuery(sql);
while
(res.next()) {
System.out.println(res.getString(
1
));
}
}
}