Hive借助java反射解决User-agent编码乱码问题

一、需求背景

在截取到浏览器user-agent,并想保存入数据库中,经查询发现展示的为编码后的结果。
现需要经过url解码过程,将解码后的结果保存进数据库,那么有几种实现方式。

二、问题解决

1、百度:url在线解码工具

输入下述内容,得到解码后的结果

复制代码
Mozilla/5.0%20(Macintosh;%20Intel%20Mac%20OS%20X%2010_6_8)%20AppleWebKit/537.13+%20(KHTML,%20like%20Gecko)%20Version/5.1.7%20Safari/534.57.2

但不能对每一个ua都在线进行完解码后,再存入数据库,操作量太大了,重复!

2、借助java程序实现

复制代码
通过URLDecoder.decode()方法,将参数填入进去,最后输出解码后的结果来实现。

即可以通过Hive自定义UDF函数的形式,将上述方法进行封装使用。

3、借助Hive的反射实现

先看下反射的详细情况

可以看到,先写类名,再写方法名,参数可有可无

运行结果展示,优于自定义UDF函数,更简便:

相关推荐
青云交17 小时前
Java 大视界 -- Java 大数据在智能教育学习成果评估体系完善与教育质量提升中的深度应用(434)
java·hive·spark·智能教育·学习成果评估·教育质量提升·实时评估
咨询QQ:4877392782 天前
探索Qt下的UI皮肤生成器:多风格与编译那些事儿
hive
lalala_lulu2 天前
Jsp的四种作用域(超详细)
java·开发语言·hive
忘记9263 天前
Servlet 生命周期
数据仓库·hive·hadoop
天天向上杰3 天前
小识:从理财数仓角度看GaussDB、PostgreSQL、Hive 三区别
hive·hadoop·gaussdb
写代码的【黑咖啡】3 天前
Hive on Spark:加速大数据分析的新引擎
hive·数据分析·spark
yumgpkpm3 天前
Hadoop 与AI大模型实战:从Hive、Impala(Cloudera CDH、CDP)海量数据到 AI 决策的落地方法
arm开发·人工智能·hive·zookeeper·flink·kafka·cloudera
码以致用4 天前
Hive笔记
hive·hadoop·笔记
路边草随风4 天前
通过hive元数据库查询表信息
大数据·数据库·hive·hadoop
Agatha方艺璇4 天前
安装Hive初始化MySQL报错 (ZLjava/lang/String;Ljava/lang/0bject; )V
hive·mysql