JSON的使用

package com.wing.mall.cloud.base.test.json;

import com.alibaba.druid.support.json.JSONUtils;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import lombok.Data;

import java.util.*;

@Data
public class Person {
    //@JSONField(name = "AGE")
    private int age;

    //@JSONField(name = "FULL NAME")
    private String fullName;

    //@JSONField(name = "DATE OF BIRTH")
    private Date dateOfBirth;

    public Person(int age, String fullName, Date dateOfBirth) {
        super();
        this.age = age;
        this.fullName= fullName;
        this.dateOfBirth = dateOfBirth;
    }

    public static void main(String[] args) {
        Person zhangsan = new Person(18, "zhangsan", new Date());
        //1:对象转JSON字符串
        String string = JSON.toJSONString(zhangsan);
        System.out.println(string);
        /**输出:
         *   {"age":18,"dateOfBirth":1591749219656,"fullName":"zhangsan"}
         */
        //-------------------------------------
        //2:JSON字符串转对象
        Person person = JSON.parseObject(string,Person.class);
        System.out.println(person);
        /**
         * 输出:
         * Person(age=18, fullName=zhangsan, dateOfBirth=Wed Jun 10 08:47:12 GMT+08:00 2020)
         */
        //--------------------------------------
        //3:list对象转JSON字符串
        List<Person> listOfPersons = new ArrayList<Person>();
        listOfPersons.add(new Person(19, "lisi", new Date()));
        listOfPersons.add(new Person(20, "wanger", new Date()));
        String string1 = JSON.toJSONString(listOfPersons);
        System.out.println(string1);
        /**
         * 输出:
         * [{"age":19,"dateOfBirth":1591749437754,"fullName":"lisi"},{"age":20,"dateOfBirth":1591749437754,"fullName":"wanger"}]
         */
        //----------------------------------------
        //4: list的字符串转List集合。
        List<Person> ts = (List<Person>) JSONArray.parseArray(string1, Person.class);
        ts.forEach(person1 -> {
            System.out.println(person1);
        });
        /**
         * 输出:
         *  Person(age=19, fullName=lisi, dateOfBirth=Wed Jun 10 09:19:14 GMT+08:00 2020)
         * Person(age=20, fullName=wanger, dateOfBirth=Wed Jun 10 09:19:14 GMT+08:00 2020)
         */
        //-------------------------------------------------
        //5:Map转JSON字符串
        Map<String, Object> map = new HashMap<>();
        map.put("a", "aaa");
        map.put("b", "bbb");
        map.put("c", 1);
        String string2 = JSONUtils.toJSONString(map);
        System.out.println(string2);
        /**
         * 输出:
         * {"a":"aaa","b":"bbb","c":1}
         */
        //---------------
        //6:JSON字符串转Map
        Map<String, Object> maps = (Map<String, Object>) JSON.parse(string2);
        maps.forEach((k,v)->{
            System.out.println("k:" + k + " " + "v:" + v);
        });
        /**
         * 输出:
         * k:a v:aaa
         * k:b v:bbb
         * k:c v:1
         */
    }
}

 

JSON的使用

上一篇:postman测试post请求参数为json类型


下一篇:CSS揭秘三(形状)