tiptop的4gl环境默认不支持解析jaon数据,通过导入java包,可以实现解析,以下是实际案例
一:环境
1:GP环境:TOPGP 5.2以上
2:jar包:fastjson.jar
二:导入方式
1:将fastjson.jar包下载下来,导入/u1/topprod/tiptop/ds4gl2/bin目录
2:打开/u1/topprod/tiptop/ds4gl2/bin/tiptop_env文件,在CLASSPATH上添加$TOP/ds4gl2/bin/fastjson.jar这一段(没有CLASSPATH可以直接在末尾加),如下:添加完毕后保存

CLASSPATH=$TOP/ds4gl2/bin/fastjson.jar:$TOP/ds4gl2/bin/javaad/jar/code.jar:$TOP/ds4gl2/bin/javaad/jar/core.jar;export CLASSPATH
3:保存后刷新下环境变量 source tiptop_env,重新登录后,就可以去尝试使用java包解析json了,实际案例如下:

# Prog. Version..: '5.25.03-11.07.14(00006)'     #
#
# Pattern name...: cws_json.4gl
# Descriptions...:
# Date & Author..: 2019/04/17 By caozq
# Usage..........: 4GL解析json范例
IMPORT util
IMPORT JAVA com.alibaba.fastjson.JSON
IMPORT JAVA com.alibaba.fastjson.JSONArray
IMPORT JAVA com.alibaba.fastjson.JSONObjectDATABASE dsGLOBALS "../../config/top.global"    #FUN-7C0053FUNCTION cws_json()
DEFINE json_str RECORD cust_num   INTEGER,cust_name  VARCHAR(30),order_ids  JSONArray,arr_list   JSONArrayEND RECORD
DEFINE json_obj    JSONObject
DEFINE js STRING
DEFINE aa   STRING
DEFINE bb   STRING
DEFINE l_cnt,i   INTEGER
DEFINE obj    JSONObjectLET js = '{"cust_num":123,"cust_name":"caozq","order_ids":[234,567,789],"arr_list":[{"aa":"aa","bb":"cc"},{"aa":"aa1","bb":"bb1"}]}'LET json_obj = com.alibaba.fastjson.JSON.parseObject(js)
LET json_str.cust_num = json_obj.getIntValue("cust_num")
LET json_str.cust_name = json_obj.getString("cust_name")
LET json_str.order_ids = json_obj.getJSONArray("order_ids")
LET json_str.arr_list = json_obj.getJSONArray("arr_list")FOR i=0 TO json_str.order_ids.size()-1LET l_cnt = json_str.order_ids.getIntValue(i)
END FORFOR i=0 TO json_str.arr_list.size()-1LET obj = json_str.arr_list.getJSONObject(i)LET aa = obj.getString("aa")LET bb = obj.getString("bb")
END FOREND FUNCTION

tiptop调用java解析json案例相关推荐

  1. 如何使用java解析json文件并将其写入数据库

    JAVA解析JSON数据文件 在使用第三方的api文档时,会得到相应的JSON数据文件,那么我们怎样将JSON文件写入数据库从而测试数据呢?下面我将给大家做一个简单的展示. 一.什么是JSON JSO ...

  2. java解析json数组

    java解析json数组 import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; p ...

  3. java解析json的一种方法

    package com.hanchao.web; import net.sf.json.JSONArray; import net.sf.json.JSONObject; /************* ...

  4. Java解析JSON格式数据

    Java解析JSON格式的数据主要用到两个类JSONObject和JSONArray,这两个类在json-lib-2.4-jdk15包中,在使用JSONObject时除了需要这个包外还需要相关的依赖包 ...

  5. Java解析JSON出现双引号变成转义字符quot;解决办法

    Java解析JSON出现双引号变成转义字符" 问题描述: 在接口中读取传过来的json数据,但是双引号都转义成了" 读取xml文件格式如下: {"message" ...

  6. Java解析JSON数据

    Java解析JSON数据 1.什么是JSON? JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式. 它基于 ECMAScript (欧洲计 ...

  7. Java解析json字符串和json数组

    Java解析json字符串和json数组 public static Map<String, String> getUploadTransactions(String json){Map& ...

  8. java解析json数据_java解析JSON数据详解

    JSON是目前最流行的轻量级数据交换语言(没有之一).尽管他是javaScript的一个子集.但由于其是独立与语言的文本格式,它几乎可以被所有编程语言所支持. 以下是对java语言中解析json数据的 ...

  9. 除了闹过腥风血雨的fastjson,你还知道哪些Java解析JSON的利器?

    昨天下午 5 点 10 分左右,我解决掉了最后一个 bug,轻舒一口气,准备关机下班.可这个时候,老板朝我走来,脸上挂着神秘的微笑,我就知道他不怀好意.果不其然,他扔给了我一个新的需求,要我在 Jav ...

最新文章

  1. seo说_百度指数看世间沉浮_如何快速排名-互点快速排名_网站SEO关键词排名优化提升技巧...
  2. ios 即时聊天轻松搞定
  3. JAVA 正则表达式 分组
  4. UA MATH567 高维统计I 概率不等式7 亚指数性与亚指数分布
  5. threejs设置对象层次
  6. 《Spring 3.0就这么简单》——1.5 业务层
  7. 自然语言处理----词干提取器
  8. Windows系统bat批处理常用命令(一)
  9. linux飞信机器人,在Nagios使用飞信机器人发送警报
  10. Windows 7下可以使用的虚拟光驱软件
  11. 肖忠付武汉大学计算机学院,丁立新(武汉大学计算机学院教授)_百度百科
  12. 【迅为6818开发板资料】安卓7.1 系统编译手册
  13. 单片机中Code、RO、RW、ZI的含义即存储位置
  14. 如何用基于保利威视云平台来做网络年会直播活动
  15. freesurfer recon-all并行运算parallel
  16. 深度学习loss函数理解
  17. 暖通空调的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  18. Nginx反向代理的两种配置方式
  19. ublox ubx协议 c语言,Ublox-M8N GPS接收机UBX协议解析
  20. python整数拆分dp算法_整数拆分问题的四种解法【转载】

热门文章

  1. 丘仕达工作前给大家的礼物(转)
  2. 好的管理系统应该为健身俱乐部做这六件事
  3. SQL Server 数据库镜像
  4. 论文学习——考虑场次降雨年际变化特征的年径流总量控制率准确核算
  5. 云计算与大数据——大数据的特征
  6. R语言mgcv包时间序列分析在空气污染与健康领域的应用(1)
  7. 【第15期】2020下半年,值得关注的10本机器学习、深度学习好书
  8. 微信营销五(8个常见误区与对策)
  9. STM32F429第二十三篇之电容按键
  10. 交互式开发工具--Jupyter 介绍