zoukankan      html  css  js  c++  java
  • Java FastJson的使用

    一.简介

      FastJson是一个Java库,可以实现序列化和反序列化的操作。

      可以通过配置maven依赖安装。

    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>fastjson</artifactId>
        <version>1.2.73</version>
    </dependency>

     二.序列化

      序列化就是将Java对象转化为JSON格式的字符串。

    String objJson = JSON.toJSONString(Object object);

      例子1:将Map转成JSON。

    Map<String, Object> map = new HashMap<String, Object>();
    map.put("key1", "One");
    map.put("key2", "Two");
    String mapJson = JSON.toJSONString(map);
    
    //输出
    {"key1":"One","key2":"Two"}

      例子2:将List<Map>转化为JSON格式的字符串。

    List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
    
    Map<String, Object> map1 = new HashMap<String, Object>();
    map1.put("key1", "One");
    map1.put("key2", "Two");
    
    Map<String, Object> map2 = new HashMap<String, Object>();
    map2.put("key1", "Three");
    map2.put("key2", "Four");
    
    list.add(map1);
    list.add(map2);
    
    String listJson = JSON.toJSONString(list);
    
    //输出
    [{"key1":"One","key2":"Two"},{"key3":"Three","key4":"Four"}]

      例子3:将对象转化为JSON格式的字符串。

    User user = new User();
    user.setUserName("李四");
    user.setAge(24);
    
    String userJson = JSON.toJSONString(user);
    
    //输出
    {"age":24,"userName":"李四"}

     三.反序列化

      反序列化就是将JSON格式的字符串转化为Java对象。

      例子1:泛型的反序列化,使用TypeReference传入类型信息。

    String mapJson = "{"key1":"One","key2":"Two"}";
    Map<String, Object> map1 = JSON.parseObject(mapJson, new TypeReference<Map<String, Object>>(){});
    System.out.println(map1.get("key1"));
    System.out.println(map1.get("key2"));
    
    //输出
    One
    Two

      例子2:集合反序列化。

    String listJson = "[{"key1":"One","key2":"Two"},{"key1":"Three","key2":"Four"}]";
    List<Map> list1 = JSON.parseArray(listJson, Map.class);
    for(Map<String, Object> map : list1){
        System.out.println(map.get("key1"));
        System.out.println(map.get("key2"));
    }
    
    //输出
    One
    Two
    Three
    Four

      例子3:泛型的反序列化(使用TypeReference传入类型信息)。

    String mapJson = "{"key1":"One","key2":"Two"}";
    Map<String, Object> map1 = JSON.parseObject(mapJson, new TypeReference<Map<String, Object>>(){});
    System.out.println(map1.get("key1"));
    System.out.println(map1.get("key2"));
    
    //输出
    One
    Two

      

  • 相关阅读:
    初学JS——利用JS制作的别踩白块儿(街机模式) 小游戏
    对于大数据量的Json解析
    Json数据中的特殊字符处理
    移动端总结和手机兼容问题
    在DW 5.5+PhoneGap+Jquery Mobile下搭建移动开发环境
    HTML5所有标签汇总
    二叉树
    二分查找
    归并排序
    希尔排序
  • 原文地址:https://www.cnblogs.com/shadoll/p/14766059.html
Copyright © 2011-2022 走看看