使用FastJson转化Json格式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用FastJson转化Json格式相关的知识,希望对你有一定的参考价值。

1.下载Jar包

http://repo1.maven.org/maven2/com/alibaba/fastjson/

2.将jar包导入工程

3.示例

package nc.testFastJson;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;

public class TestFastJson {

    public static void main(String[] args) {
        
        //    java对象 转 json
        People p1 = new People("people_1","Male",1);
        String p1_Json = JSON.toJSONString(p1);
        System.out.println(p1_Json.toString());
        
        //    json 转 java对象
        String p2_Json = "{‘name‘:‘people_2‘,‘sex‘:‘Male‘,‘age‘:2}";
        People p2 = JSON.parseObject(p2_Json, People.class);
        System.out.println(p2.toString());
        
        //    java对象LinkedList集合 转 json
        LinkedList<People> p_list = new LinkedList<>();
        People p3 = new People("people_3","Male",3);
        People p4 = new People("people_4","Male",4);
        People p5 = new People("people_5","Male",5);
        
        p_list.add(p3);
        p_list.add(p4);
        p_list.add(p5);
        
        String p_list_Json = JSON.toJSONString(p_list);
        System.out.println(p_list_Json);
        
        //    json 转 java对象List集合 
        List<People> p_list_2 = JSON.parseArray(p_list_Json, People.class);
        for (People people : p_list_2) {
            System.out.println(people.toString());
        }
        
        //    java对象ArrayList 转 json
        ArrayList<People> arrayList = new ArrayList<>();
        arrayList.add(p3);
        arrayList.add(p4);
        arrayList.add(p5);
        
        String arrays_json = JSON.toJSONString(arrayList);
        System.out.println(arrays_json);
        
        //    json 转 java对象List集合 
        List<People> arrayList2 = JSON.parseArray(arrays_json, People.class);
        for (People people : arrayList2) {
            System.out.println(people.toString());
        }
        
        //    map 转 json
        HashMap<String ,People> map = new HashMap<>();  
        map.put("p3", p3);
        map.put("p4", p4);
        map.put("p5", p5);
        
        String map_json = JSON.toJSONString(map);
        System.out.println(map_json);
        
        //    json 转 map
        Map<String, String> map2 = JSONObject.parseObject(map_json.toString(), new TypeReference<Map<String, String>>(){});
        Set<Entry<String, String>> entrySet = map2.entrySet();
        for (Entry<String, String> entry : entrySet) {
            String key = entry.getKey();
            String value = entry.getValue();
            People p = JSON.parseObject(value, People.class);
            
            System.out.println(key+":"+p.toString());
        }
        
    }

}
package nc.testFastJson;


public class People {
    
    private String name ;
    private String sex ;
    private int age ;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getSex() {
        return sex;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    @Override
    public String toString() {
        return "People [name=" + name + ", sex=" + sex + ", age=" + age + "]";
    }
    
    public People() {
        super();
    }
    public People(String name, String sex, int age) {
        super();
        this.name = name;
        this.sex = sex;
        this.age = age;
    }
    
}

 技术分享

以上是关于使用FastJson转化Json格式的主要内容,如果未能解决你的问题,请参考以下文章

快速将对象转化为JSON格式

复杂json格式转化为javabean

fastjson将json字符串转化成map的五种方法

fastjson中怎么把java对象转化为json对象

阿里fastjson到底如何使用

fastjson把对象转化成json避免$ref