生成json数组格式文件实现方法

2027
0

zhangdf 小试身手Lv3

发表于2020-9-4 10:50

楼主
本帖最后由 zhangdf 于 2020-9-4 10:55 编辑

需求描述:需要生成json文件,且生成的json文件中内容为json数组的形式。json文件格式如下图所示:

实现方案:使用“json生成”组件生成的json文件中是一个个单独的json串,如果想要为json数组形式,则需要将这些json串拼接起来。

实现思路:1)使用json生成组件将每条数据拼接成一个json
                  2)定义参数:rcnt,使用参数赋值组件进行count赋值给rcnt
                  3)添加表达式组件1新增行号字段:ROWNUMBER
                  4)添加表达式组件2根据行号针对json字段进行拼接:
  1. IF(<#=rcnt#><=1,'['+Expression2.col_+']', IF(Expression2.rnum_=1,'['+Expression2.col_+',',IF(Expression2.rnum_=<#=rcnt#>,Expression2.col_+']',Expression2.col_+',')))
复制代码
                  5)输出到平面文件中得到对应的json数组文件格式

实现步骤:
1.【表输入组件】,选择相应连接池里的相应数据库表
2.设置参数,rcnt,记录总条数
3.设置【路由组件】,
4.【路由组件】的分支一【参数赋值】组件(其他组件下)
5.【路由组件】的分支一【json生成组件】(接口组件下)
6.【json生成组件】后接【表达式组件】(转换组件下),使用 ROWNUMBER(null,JSONCreater1.QYLX)生成行号
7.后再接【表达式组件】(转换组件下),使用IF(<#=rcnt#><=1,'['+Expression2.col_+']',IF(Expression2.rnum_=1,'['+Expression2.col_+',',IF(Expression2.rnum_=<#=rcnt#>,Expression2.col_+']',Expression2.col_+',')))根据行号进行拼接。
8.最后使用【平面文件输出】组件输出即可





交换任务见附件,可直接导入。
生成json数组文件-(20200904104913).zip (2.69 KB, 下载次数: )



最近看过此主题的会员

sunq

dora232

chestnut

jiangss

zhaojinjin

0个回答

只看楼主

登录后可回答问题,请登录注册

快速回复 返回顶部 返回列表

小时

全天响应

分钟

快速处理问题

工程师强势助力

明星产品
解决方案
联系合作

渠道咨询电话:137-0120-6790

技术支持QQ:400-0011-866(工作日9:00-18:00)

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

版权所有© 2006-2024 北京亿信华辰软件有限责任公司 京ICP备07017321号 京公网安备11010802016281号