当前位置: 首页 > article >正文

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函数,更简便:
在这里插入图片描述


http://www.kler.cn/a/274464.html

相关文章:

  • 【Numpy核心编程攻略:Python数据处理、分析详解与科学计算】3.1 NumPy图像大小调整实战
  • 实战:如何快速让新网站被百度收录?
  • 2024-我的学习成长之路
  • 四川正熠法律咨询有限公司正规吗可信吗?
  • OPENPPP2 —— VMUX_NET 多路复用原理剖析
  • MySQL锁详解
  • 学生课程数据库综合操作(SQL)
  • android 怎么自定义view
  • 【博士每天一篇文献-综述】Brain network communication_ concepts, models and applications
  • vue3实现输入框短信验证码功能---全网始祖
  • 【华为OD机试】绘图机器【C卷|100分】
  • 虚拟游戏理财 - 华为OD统一考试(C卷)
  • CVE-2019-5782:kArgumentsLengthType 设置偏小导致优化阶段可以错误的去除 CheckBound 节点
  • 【ESP32 IDF】ESPTIMER定时器
  • Java八股文(RabbitMQ)
  • mysql事务和行锁
  • 串口123
  • 《算法王晓东》最小重量机器设计问题
  • JavaSE(上)-Day6
  • 基于openresty构建运维工具链实践
  • Elasticsearch常用语句
  • 系统架构设计师笔记第37期:数据访问层设计
  • 保姆级docker 容器安装部署 MySQL:5.7主从复制
  • 从零开始写 Docker(六)---实现 mydocker run -v 支持数据卷挂载
  • 搭建项目后台系统基础架构
  • 【MySQL】MySQL视图