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

flink1.17 实现 udf scalarFunctoin get_json_object 支持 非标准化json

特色

相比官方的json_value,该函数支持非标准化json,比如v是个object,但是非标准json会外套一层引号,内部有反引号.

eg:  {"kkkk2":  "{\"kkkk1\":\"vvvvvvv\"}" }

支持value为 100L 这种java格式的bigint.    {"k":999L}

基于jsonPath 方便,可以获取多层级内部值

代码实现


import com.alibaba.fastjson2.{JSONPath, JSONReader}
import org.apache.flink.table.functions.ScalarFunctionimport scala.util.Try
import org.apache.flink.configuration.{Configuration, RestOptions}
import org.apache.flink.streaming.api.scala.StreamExecutionEnvironment
import org.apache.flink.table.api.Expressions.row
import org.apache.flink.table.api._
import org.apache.flink.table.api.bridge.scala.StreamTableEnvironmentobject GetJsonObject {def main(args: Array[String]): Unit = {val conf = new Configurationconf.setInteger(RestOptions.PORT, 38080)val env = StreamExecutionEnvironment.createLocalEnvironmentWithWebUI(conf)val tEnv = Strea
http://www.lryc.cn/news/132132.html

相关文章:

  • 基于VUE3+Layui从头搭建通用后台管理系统(前端篇)九:自定义组件封装下
  • 设计模式详解-装饰器模式
  • Android5:活动生命周期
  • 第2章 数据结构和算法概述
  • WPF国际化的实现方法(WpfExtensions.Xaml)
  • 【Linux】—— 进程程序替换
  • idea创建javaweb项目,jboss下没有web application
  • 广东灯具3D扫描抄数建模服务3D测绘出图纸三维逆向设计-CASAIM
  • Nginx反向代理-负载均衡、webshell实践
  • 第六阶|见道明心的笔墨(上)从书法之美到生活之美——林曦老师的线上直播书法课
  • nbcio-boot从3.0升级到3.1的出现用户管理与数据字典bug
  • Curson 编辑器
  • Shell编程学习之函数的应用
  • Fork/Join框架
  • LeetCode_字符串_中等_468.验证 IP 地址
  • ABAP Der Open SQL command is too big.
  • QChart类用来 管理 图表的:数据序列(series)、图例(legend)和坐标轴(axis)
  • Servlet+JDBC实战开发书店项目讲解第10篇:在线客服功能实现
  • CVE-2023-21292 AMS框架层高危漏洞分析
  • cuda、cuDNN、深度学习框架、pytorch、tentsorflow、keras这些概念之间的关系
  • 第二讲:BeanFactory的实现
  • vue2+Spring Boot2.7 大文件分片上传
  • Vite更新依赖缓存失败,强制更新依赖缓存
  • Linux命令200例:tail用来显示文件的末尾内容(常用)
  • 【Unity每日一记】进行发射,位置相关的方法总结
  • MISRA 2012学习笔记(3)-Rules 8.4-8.7
  • centos7组件搭建
  • webpack5和webpack4的一些区别
  • 攻防世界-fileclude
  • 深度学习的“前世今生”