fastjson 簡單使用

利用fastjson 能夠將對象轉換爲 json String,並能夠將 json String 轉爲相應的對象java

package com.jason.test;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.serializer.SerializerFeature;

import java.util.ArrayList;

public class FastJsonTest {
    public static void main(String[] args) {
        User user = new User("jason", "123456");
        String json = JSON.toJSONString(user, SerializerFeature.WriteNullListAsEmpty);
        //String json = JSON.toJSONString(user);
        System.out.println(json); //{"name":"jason","passwd":"123456"}

        User user2 = new User("dong", "123456");
        ArrayList<User> list = new ArrayList<>(2);
        list.add(user);
        list.add(user2);
        String listJson = JSON.toJSONString(list);
        System.out.println(listJson);//[{"name":"jason","passwd":"123456"},{"name":"dong","passwd":"123456"}]

        UserFoo uf = JSON.parseObject(json, UserFoo.class);
        System.out.println(uf);//UserFoo{name='jason', passwd='123456'}
    }
}


class User {
    private String name;
    private String passwd;

    public User(String name, String passwd) {
        this.name = name;
        this.passwd = passwd;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPasswd() {
        return passwd;
    }

    public void setPasswd(String passwd) {
        this.passwd = passwd;
    }

}

class UserFoo {
    private String name;
    private String passwd;

    public UserFoo() {
    }

    public UserFoo(String name, String passwd) {
        this.name = name;
        this.passwd = passwd;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPasswd() {
        return passwd;
    }

    public void setPasswd(String passwd) {
        this.passwd = passwd;
    }

    @Override
    public String toString() {
        return "UserFoo{" +
                "name='" + name + '\'' +
                ", passwd='" + passwd + '\'' +
                '}';
    }
}

要轉換爲json String 的對象必定要有set get 方法,json

JSON.parseObject 能夠將json string 轉爲對應的objectide

該方法有兩個參數this

JSON.parseObject(String text, Class<T> clazz),text爲要轉換的json string, clazz 要轉換成的類
 

JSON.toJSONString (object  2 jsonString)有兩個重載方法:spa

toJSONString(Object object, SerializerFeature... features) 除了傳入要轉換的對象,還能夠傳入SerializerFeature 枚舉,好比,將null list 轉爲空
toJSONString(Object object)只傳入對象便可
相關文章
相關標籤/搜索