json解析包的選擇

一般有gson、json-lib、jackjson、fastjson

  fastjson 所有解析包中最快的,而且是由阿里巴巴開發的。

經歷過一個個嘗試後,覺得fastjson是最好用的,簡單,快速。


下面是fastjson的使用的簡單範例。

對象封裝爲json字符串:

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; }
}



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; }
}




import com.alibaba.fastjson.JSON;


Group group = new Group();
group.setId(0L);
group.setName("admin");

User guestUser = new User();
guestUser.setId(2L);
guestUser.setName("guest");

User rootUser = new User();
rootUser.setId(3L);
rootUser.setName("root");

group.getUsers().add(guestUser);
group.getUsers().add(rootUser);


String jsonString = JSON.toJSONString(group);
System.out.println(jsonString);

輸出結果:

{
      "name":"admin",
      "id":0,"users":[
                             {"name":"guest","id":2},
                             {"name":"root","id":3}
                         ]
}

解析json字符串:

Group group2 = JSON.parseObject(jsonString, Group.class);


常用的一些方法:

Fastjson的最主要的使用入口是 com.alibaba.fastjson.JSON

import com.alibaba.fastjson.JSON;

public static final Object parse(String text); // 把 JSON 文本 parse 爲 JSONObject 或者 JSONArray 
public static final JSONObject parseObject(String text);  //  把 JSON 文本 parse 成 JSONObject 
public static final <T> T parseObject(String text, Class<T> clazz); // 把 JSON 文本 parse 爲 JavaBean 
public static final JSONArray parseArray(String text); // 把 JSON 文本 parse 成 JSONArray 
public static final <T> List<T> parseArray(String text, Class<T> clazz); //把 JSON 文本 parse 成 JavaBean 集合 
public static final String toJSONString(Object object); // 將 JavaBean 序列化爲 JSON 文本 
public static final String toJSONString(Object object, boolean prettyFormat); // 將 JavaBean 序列化爲帶格式的 JSON 文本 
public static final Object toJSON(Object javaObject); 將 JavaBean 轉換爲 JSONObject 或者 JSONArray 。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章