zoukankan      html  css  js  c++  java
  • fastjson

    GitHub

    https://github.com/alibaba/fastjson

    fastjson是目前java语言中最快的json库,比 jacksongson 都要快。

    Maven

    <!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>fastjson</artifactId>
        <version>1.2.49</version>
    </dependency>
    

    Methods

    Object → String

    将 VO 转为 String

    将 Map 转为 String

    将 Collection 转为 String

    将 Array 转为 String

    String jsonString = JSON.toJSONString(object)
    

    String → T 或 Map<String, Object>

    将 String 转为 T

    VO vo = JSON.parseObject(text, VO.class)
    

    将 String 转为 JSONObject(即 Map<String, Object>)

    JSONObject object = JSON.parseObject(text)
    

    String → List< T > 或 List< Object >

    将 String 转为 List

    List<VO> list= JSONObject.parseArray(text, VO.class);
    

    将 String 转为 JSONArray(即 List< Object >)

    JSONArray array = JSON.parseArray(text)
    

    Samples

    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.JSONArray;
    import com.alibaba.fastjson.JSONObject;
    
    import hust.zeng.utils.pojo.Group;
    import hust.zeng.utils.pojo.User;
    
    public class JsonUtil {
    
        public static void main(String[] args) {
    
            System.out.println("1.Object >> String");
    
            // 1.1.将普通对象转为JsonString
            Group group = new Group();
            group.setId(1L);
            group.setName("group1");
    
            User guestUser = new User();
            guestUser.setId(10L);
            guestUser.setName("admin");
    
            User rootUser = new User();
            rootUser.setId(11L);
            rootUser.setName("guest");
    
            group.addUser(guestUser);
            group.addUser(rootUser);
    
            String voString = JSON.toJSONString(group);
            System.out.println(voString);
    
            // 1.2.将Map对象转为JsonString
            HashMap<String, Object> map = new HashMap<>(); //JSONObject map = new JSONObject();
            map.put("id", 7);
            HashMap<String, Object> info = new HashMap<>();
            info.put("name", "HUST");
            info.put("adreess", "wuhan");
            map.put("info", info);
            String mapStr = JSON.toJSONString(map);
            System.out.println(mapStr);
    
            // 1.3.将List对象转为JsonString
            ArrayList<String> list = new ArrayList<>(); //JSONArray list = new JSONArray();
            list.add("aa");
            list.add("bb");
            String listStr = JSON.toJSONString(list);
            System.out.println(listStr);
    
            // 1.4.将数组对象转为JsonString
            Object[] array = new Object[3];
            array[0] = 1;
            array[1] = 2;
            array[2] = 3;
            String arrayStr = JSON.toJSONString(array);
            System.out.println(arrayStr);
    
            System.out.println("2.String → T 或 Map<String, Object>");
    
            // 2.1.将String转为T
            Group group2 = JSON.parseObject(voString, Group.class);
            System.out.println(group2);
    
            // 2.2.将String转为JSONObject
            Map<String, Object> map2 = JSON.parseObject(mapStr);
            System.out.println(map2);
    
            System.out.println("3.String → List<T> 或 List<Object>");
            
            // 3.1.将String转为List<T>
            List<String> list2 = JSON.parseArray(listStr, String.class);
            System.out.println(list2);
    
            // 3.2.将String转为JSONArray
            List<Object> array2 = JSON.parseArray(arrayStr);
            System.out.println(array2);
    
        }
    }
    
    
  • 相关阅读:
    webpack的入门实践,看这篇就够了
    vue系列教程-15vuex的使用
    vue系列教程-14axios的使用
    vue系列教程-13vuecli初体验
    vue系列教程-12vue单文件组件开发
    vue系列教程-11vuerouter路由
    vue系列教程-10vue过滤器和自定义指令
    vue系列教程-09vue组件
    Spring Redis开启事务支持错误用法导致服务不可用
    MySQL主从数据库配置与原理
  • 原文地址:https://www.cnblogs.com/zengzhihua/p/9707048.html
Copyright © 2011-2022 走看看