利用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)只傳入對象便可