fastJosn序列化和反序列化學習

jopen 9年前發布 | 17K 次閱讀 fastJosn JSON開發包

fastjson 是一個性能很好的 Java 語言實現的 JSON 解析器和生成器,來自阿里巴巴的工程師開發。

fastjson中最重要的就是序列化和反序列化,我們來學習fastjson是如何實現序列化和反序列化的。

1.定義json格式:


{"id":0,"name":"admin","users":[{"id":2,"name":"guest"},{"id":3,"name":"root"}]}
2.建立與之對應的javabean


Group.java


public class Group {

    private Long       id;
    private String     name;
    private List<User> users = new ArrayList<User>();

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

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

    public List<User> getUsers() {
        return users;
    }

    public void setUsers(List<User> users) {
        this.users = users;
    }
}
public class User {

    private Long   id;
    private String name;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

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

3.建立對應關系以后,就可以通過JSON來完成序列化和反序列化操作。



String jsonString = {/"id/":0,/"name/":/"admin/",/"users/":[{/"id/":2,/"name/":/"guest/"},{/"id/":3,/"name/":/"root/"}]};
//序列化
Group group = JSON.parseObject(jsonString, Group.class);
//獲取元素的值
System.out.println(group.getName());
//獲取數組中第一個元素的值
System.out.println(group.getUsers().get(0).getName());
//反序列化
System.out.println(JSON.toJSONString(group));

執行結果:



admin
guest
<pre name="code" class="html">{"id":0,"name":"admin","users":[{"id":2,"name":"guest"},{"id":3,"name":"root"}]} 





 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!