使用fastjson对Map或List实现快速Json格式转换

fastjson是一个Java语言编写的高性能功能完善的JSON库 支持各种JDK类型。包括基本类型、JavaBean、Collection、Map、Enum、泛型等,fastjson采用独创的算法,将parse的速度提升到极致,超过所有json库,包括曾经号称最快的jackson。以下简单的Map、List<Map>转换json示例:

 

  1.  
    import com.alibaba.fastjson.JSON;
  2.  
    import com.alibaba.fastjson.JSONArray;
  3.  
    import com.alibaba.fastjson.JSONObject;
  4.  
     
  5.  
    import java.util.ArrayList;
  6.  
    import java.util.HashMap;
  7.  
    import java.util.Map;
  8.  
     
  9.  
    /***
  10.  
    * 利用alibaba的fastjson将数据转化为Json格式
  11.  
    */
  12.  
    public class Transform2Json {
  13.  
    /** 将Map转换为JsonObject */
  14.  
    public static JSONObject map2JsonObject(){
  15.  
     
  16.  
    HashMap<Object, Object> hp = new HashMap<>();
  17.  
    hp.put( "lat", 32.7681);
  18.  
    hp.put( "lon", "114.1379");
  19.  
    hp.put( "header", "iron");
  20.  
    hp.put( "request", "post");
  21.  
    hp.put( "page", "1");
  22.  
     
  23.  
    String s = JSON.toJSONString(hp);
  24.  
    JSONObject jsonObject = JSONObject.parseObject(s);
  25.  
     
  26.  
    return jsonObject;
  27.  
    }
  28.  
     
  29.  
    /** 将List<Map>格式数据转换为JsonArray */
  30.  
    public static JSONArray list2JsonArray(){
  31.  
     
  32.  
    ArrayList<Map<Object, Object>> maps = new ArrayList<>();
  33.  
    HashMap<Object, Object> dataMap = new HashMap<>();
  34.  
    HashMap<Object, Object> dataMap1 = new HashMap<>();
  35.  
    dataMap.put( "request", "get");
  36.  
    dataMap.put( "status", 200);
  37.  
    dataMap.put( "header", "git");
  38.  
     
  39.  
    dataMap1.put( "block", "1");
  40.  
    maps.add(dataMap);
  41.  
    maps.add(dataMap1);
  42.  
     
  43.  
    String s1 = JSON.toJSONString(maps);
  44.  
    JSONArray jsonArray = JSONArray.parseArray(s1);
  45.  
     
  46.  
    return jsonArray;
  47.  
    }
  48.  
     
  49.  
    public static void main(String[] args) {
  50.  
    JSONObject jsonObject = map2JsonObject();
  51.  
    JSONArray jsonArray = list2JsonArray();
  52.  
    System.out.println( "Map转换JsonObject后:"+jsonObject);
  53.  
    System.out.println( "List转换JsonArray后:"+jsonArray);
  54.  
    }
  55.  
    }
  56.  
     
  57.  
    运行结果如下:
  58.  
    Map转换JsonObject后:{ "request": "post", "header": "iron", "lon": "114.1379", "page": "1", "lat": 32.7681}
  59.  
    List转换JsonArray后:[{ "request": "get", "header": "git", "status": 200},{ "block": "1"}]
  60.  
     
  61.  
     
  62.  
    Process finished with exit code 0
  63.  
     


 

转载于:https://www.cnblogs.com/gscq073240/articles/9939201.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值