基础信息参照:Hive 自定义函数 - Java和Python的详细实现
一 需求
对手机号进行脱敏处理,将中间4位数字替换成****
- 对数据格式进行判断:11位数字
- 对于格式正确的数据,将中间4位数字替换成****
- 对于格式不正确的数据,将原始数据返回
二 Java实现
1 前期准备
1.1 在IntelliJ IDEA里新建一个Maven项目
1.2 在pom.xml引入hive的依赖(注意版本号)
<dependencies>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-exec</artifactId>
<version>3.1.2</version>
</dependency>
</dependencies>
1.3 新建一个类(com.zhs.udf.EncryptPhoneNum)
2 类代码
package com.zhs.udf;
import org.apache.commons.lang.StringUtils;
import org.apache.hadoop.hive.ql.exec.UDFArgum