开发基础 报表教程 数据字典 对话编程 表单打印 增强出口 SAP接口 S/4 HANA
实战案例 实战笔记 资料下载 CRM
问答互助 会员分享 俱乐部 广告区
论坛指南、建议和投诉
Twilight发表于 2017-02-23 09:35zhongguomao 最后回复于 2017-08-26 09:34 [复制链接] 9498 1
使用道具 举报
Twilight
管理员
发表回复 回帖后跳转到最后一页
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。
JSON数据格式示例:
一个对象以“{”(左括号)开始,“}”(右括号)结束
一个数组以“[”(左中括号)开始,“]”(右中括号)结束
二、JSON与XML
XML数据格式:
编码的可读性,xml有明显的优势,毕竟人类的语言更贴近这样的说明结构。json读起来更像一个数据块,读起来就比较费解了。不过,我们读起来费解的语言,恰恰是适合机器阅读。
JSON难阅读,试试:JSON在线编辑器
JSON没有多余的标签,所以JSON比xml网络传输效率更高。
三、JSON与ABAP格式互转
1、cl_trex_json_serializer、cl_trex_json_deserializer方式
该种转换方式,生成的JSON,KEY关键字没有引号,字符串中包含空格,如果与第三方系统做接口时,就会因为JSON格式问题,导致接口失败。
2、CALL TRANSFORMATION id 方式
该种JSON转换生成的数据,比内表数据多了一部分“TEXT”字符串,也不是很满意
3、/UI2/CL_JSON方式
/UI2/CL_JSON方式转换生成的JSON格式就完美了,他不仅支持结构、内表转换成JSON,还支持嵌套结构deep structure这种复杂的结构,了解更多请参考:
https://wiki.scn.sap.com/wiki/display/Snippets/One+more+ABAP+to+JSON+Serializer+and+Deserializer
注意:ABAP中定义变量是不区分大小写,而JAVA中变量是区分大小写的,所以需要对字符串替换一下,如下: