zoukankan      html  css  js  c++  java
  • 《Java知识应用》Java Json说明和使用(fastjson)

    工具包下载:链接: https://pan.baidu.com/s/1dn5uNwiJ1ICkbPknlMmkHQ 提取码: ayzn 复制这段内容后打开百度网盘手机App,操作更方便哦

    1.JSON介绍

    JSON(javaScript Object Notation)是一种轻量级的数据交换格式。主要采用键值对({"name": "json"})的方式来保存和表示数据。JSONJS对象的字符串表示法,它使用文本表示一个JS对象的信息,本质上是一个字符串。

    2.FastJson简介

    fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean。

    3.fastjson的优点

    (1)速度快:fastjson相对其他JSON库的特点是快,从2011年fastjson发布1.1.x版本之后,其性能从未被其他Java实现的JSON库超越。

    (2)使用广泛:fastjson在阿里巴巴大规模使用,在数万台服务器上部署,fastjson在业界被广泛接受。在2012年被开源中国评选为最受欢迎的国产开源软件之一。

    (3)测试完备

    (4)功能完备:支持泛型,支持流处理超大文本,支持枚举,支持序列化和反序列化扩展。

    4. JSON 常用方法:

    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.JSONArray;
    
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    public class JsonDemo {
        public static void main(String[] args) {
            mapToJson();
            mapListToJson();
            objectToJson();
            objectListToJson();
            jsonToObject();
            jsonToMap();
            jsonToList();
        }
    
        /**
         * Map 转成 Json
         */
        public static void mapToJson() {
            Map<String, Object> map = new HashMap<>();
            map.put("key1", "One");
            map.put("key2", "Two");
    
            String mapJson = JSON.toJSONString(map);
            System.out.println("mapJson:" + mapJson);
        }
    
        /**
         * MapList 转成 Json
         */
        public static void mapListToJson() {
            List<Map<String, Object>> list = new ArrayList<>();
    
            Map<String, Object> map1 = new HashMap<>();
            map1.put("key1", "One");
            map1.put("key2", "Two");
    
            Map<String, Object> map2 = new HashMap<>();
            map2.put("key1", "Three");
            map2.put("key2", "Four");
    
            list.add(map1);
            list.add(map2);
    
            String listJson = JSON.toJSONString(list);
            System.out.println("listJson:" + listJson);
        }
    
        /**
         * Object 转成 Json
         */
        public static void objectToJson() {
            User user = new User();
            user.setUserName("李四");
            user.setAge(24);
    
            String userJson = JSON.toJSONString(user);
            System.out.println("userJson:"+userJson);
        }
    
        /**
         * ObjectList 转成 Json
         */
        public static void objectListToJson() {
            List<User> list = new ArrayList<>();
            for (int i = 25; i < 27 ; i++) {
                User user = new User();
                user.setUserName("李四-"+i);
                user.setAge(i);
                list.add(user);
            }
    
            String userJson = JSON.toJSONString(list);
            System.out.println("userJson:"+userJson);
        }
    
        /**
         * Json 转成 Map
         */
        public static void jsonToMap() {
            String msgJson = "{"age":25,"userName":"李四-25"}";
            Map<String, Object> map = JSON.parseObject(msgJson, Map.class);
            System.out.println("map:"+map);
        }
    
        /**
         * Json 转成 Object
         */
        public static void jsonToObject() {
            String msgJson = "{"age":25,"userName":"李四-25"}";
            User user = JSON.parseObject(msgJson,User.class);
            System.out.println("user:"+user);
        }
    
        /**
         * Json 转成 ObjectList
         */
        public static void jsonToList() {
            String msgJson = "[{"age":25,"userName":"李四-25"},{"age":26,"userName":"李四-26"}]";
            JSONArray array = JSON.parseArray(msgJson);
            for (int i = 0; i < array.size(); i++){
                User user = array.getObject(i,User.class);
                System.out.println("user:"+user);
            }
        }
    }

    运行结果:

    参考:https://www.cnblogs.com/luckyplj/p/10711195.html

               https://blog.csdn.net/drdongshiye/article/details/80720171

    This moment will nap, you will have a dream; But this moment study,you will interpret a dream.
  • 相关阅读:
    VS2013搭建wxWidgets开发环境
    LinuxSystemProgramming-Syllabus
    Python入门2(Python与C语言语法的不同、Notepad++运行Python代码)
    Python入门1(简介、安装)
    面试题收集---grep和find的区别
    浅拷贝 和深拷贝
    使用 system.io.filesysteminfo 来查找文件。
    使用FileSystemWatcher捕获系统文件状态
    system.io.file创建
    Javascript诞生记 [转载]
  • 原文地址:https://www.cnblogs.com/jssj/p/11930396.html
Copyright © 2011-2022 走看看