hive UDF函数通过jdbc连接hive源,总是卡在调用函数的地方

15005153460 2017-05-19 04:36:51
package com.hive;

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

import org.apache.hadoop.hive.ql.exec.UDF;


public class ConnHive extends UDF{
public String evaluate(String field,String table_name)
{


String driver = "org.apache.hive.jdbc.HiveDriver";
String url = "jdbc:hive2://192.168.202.128:10000";
String sql = "select t."+field+" from ymdd."+table_name+" t";
String name = "";
String pwd = "";
try {
Class.forName(driver);
Connection con = DriverManager.getConnection(url, name, pwd);
Statement stmt = con.createStatement();
ResultSet res = stmt.executeQuery(sql);
StringBuffer sbf = new StringBuffer();
while(res.next())
{
sbf.append(res.getInt(1)).append("|");
}
String str=sbf.toString();
str=str.substring(0, str.length()-1);
return str;

} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return "error";


}

public static void main(String[] args) {
ConnHive ch = new ConnHive();
System.out.println(ch.evaluate("id","test"));
}
}



...全文
406 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

7,388

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 数据仓库
社区管理员
  • 数据仓库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧