接上一篇hive开发之maven手动安装jar包,点击可跳转
添加pom依赖,说明version要与环境一致,不然可能会因为版本不一致问题报错
<dependencies>
<!--添加Hadoop依赖-->
<dependency>
<groupId>org.apache.hadoop</groupId >
<artifactId>hadoop-common</artifactId>
<version>2.7.3</version>
</dependency>
<!--添加Hive依赖-->
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-exec</artifactId>
<version>1.2.1</version>
</dependency>
</dependencies>
具体测试代码
/*
* hive自定义函数
* */
import org.apache.hadoop.hive.ql.exec.UDF;
public class HiveUdfDemo extends UDF {
//重载
public String evaluate(String input){
return input.toLowerCase();//将大写字母转换成小写
}
public int evaluate(int a,int b){
return a+b;//计算两个数之和
}
}
打包模块
1、将jar上传到服务器
2、进入hive客户端,手动添加jar包add JAR /home/admin/rkk_lpc/udf/makeudf-1.0-SNAPSHOT.jar
3、创建临时函数create temporary function HiveUdfDemo as 'HiveUdfDemo';
4、测试函数,select HiveUdfDemo("ABC");
目前测试是临时函数,后续再补充永久udf函数