Java怎样高速构造JSON字符串[通俗易懂]

Java怎样高速构造JSON字符串

大家好,又见面了,我是全栈君。

目标:依据key/value高速构造一个JSON字符串作为參数提交到web REST API服务上。
分别測试里阿里巴巴的FastJson和Google Gson,终于我採用了Google Gson来构造。

原因:
Google Gson来构造的JSON字符串里面。保留了传递參数key/value的顺序;
FastJson没有保留顺序(这个是符合JSON国际标准的,本身没有错误。

是SugarCRM REST API有bug,要求传递过来的參数是依照它的顺序要求的)。

Google Gson代码片段:

import com.google.gson.Gson;
...
  LinkedHashMap<String, String> map = new LinkedHashMap<String, String>();
        map.put("f1","xxx");
        map.put("f2","xxxx");
        map.put("f3","xxxxx");
        Gson gson = new Gson();
        String json = gson.toJson(map);

Alibaba FastJson代码片段:

import com.alibaba.fastjson.JSONObject;

JSONObject jsonObject = new JSONObject(); 
        jsonObject.put("f1", "xxx");
        jsonObject.put("f2", "xxx");
        String json = jsonObject.toJSONString();

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116063.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Android碎片化之屏幕适配

    Android碎片化之屏幕适配Android 碎片化之屏幕适配现如今 因 Android 系统的开放性 市场上出现了不同厂商出厂的各种 android 版本 分辨率 型号等设备 那对我们开发来说 碎片化绝对是一个让人头脑炸裂的问题 Android 系统碎片化 Android 机型屏幕尺寸碎片化 Android 屏幕分辨率碎片化 市面上安卓手机的主流屏幕尺寸种类繁多 就算搞定了屏幕尺寸问题 各种分辨率又让人眼花缭乱 面对测试同学抛过来的适配问

    2026年1月27日
    1
  • 奇异值分解及几何意义「建议收藏」

    奇异值分解及几何意义「建议收藏」PS:一直以来对SVD分解似懂非懂,此文为译文,原文以细致的分析+大量的可视化图形演示了SVD的几何意义。能在有限的篇幅把这个问题讲解的如此清晰,实属不易。原文举了一个简单的图像处理问题,简单形象,真心希望路过的各路朋友能从不同的角度阐述下自己对SVD实际意义的理解,比如个性化推荐中应用了SVD,文本以及Web挖掘的时候也经常会用到SVD。原文:Werecommendasingular

    2025年7月5日
    3
  • cmd输入java有效,输入javac无效解决方案

    cmd输入java有效,输入javac无效解决方案笔记本的系统是win1064bit的系统,按照网上的指导安装了jdk和jre运行cmd的时候,输入java会有输出,但是输入javac的时候就报javac不是内部或外部命令的错误。最终的解决办法是:cmd中输入:setpath="%JAVA_HOME%\bin"…

    2022年5月8日
    65
  • QTreeView样式[通俗易懂]

    QTreeView样式[通俗易懂]1、无样式2、设置被选中节点的字体颜色和背景颜色QTreeView::item:selected{color:#E7ECF0;background:qlineargradient(spread:pad,x1:0,y1:0,x2:0,y2:1,stop:0#667481,stop:1#566373);}3、设置悬浮节点的字体颜色和背景颜色QTreeView::item:hover{color:#ffffff;background:#ff0000;}4、设置节点的上下左右的内

    2022年5月29日
    339
  • js换行符转换html换行

    js换行符转换html换行js换行符转换html换行在标签中加入:dangerouslySetInnerHTML={{__html:有换行符的数据?.replace(/[\n]/g,“”)}}<divstyle={{float:’right’,width:316,fontSize:14}}dangerouslySetInnerHTML={{__html:有换行符的数据?.replace(/[\n]/g,”<br/>

    2022年5月24日
    63
  • rpm安装和卸载[通俗易懂]

    rpm安装和卸载[通俗易懂]一安装RPM是RedHat公司随RedhatLinux推出了一个软件包管理器,通过它能够更加轻松容易地实现软件的安装。  1.安装软件:执行rpm-ivhrpm包名,如:  #rpm-ivhapache-1.3.6.i386.rpm  2.升级软件:执行rpm-Uvhrpm包名。  3.反安装:执行rpm-erpm包名。  4.查询软件包的详细信息:执行r

    2022年5月22日
    92

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号