1.项目依赖配置:
<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.29</version> </dependency>
2.简单demo举例、代码如下
package com.xieli.test;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.util.ArrayList;
import java.util.List;
public class FastJsonDemo {
public static void main(String[] args) {
//简单java对象转json字符串
User user = new User("aigo", 12);
String UserJson = JSON.toJSONString(user);
System.out.println("简单java对象转json字符串:" + UserJson);
System.out.println("+++++++");
//简单java对象转json对象
JSONObject jsonObject = (JSONObject) JSONObject.toJSON(user);
System.out.println("简单java对象转json对象:" + jsonObject);
System.out.println("简单java对象转json对象:" + jsonObject.get("name"));
System.out.println("+++++++");
//list集合转json字符串
User user2 = new User("aigo2", 13);
User user3 = new User("aigo3", 14);
List<User> list = new ArrayList<>();
list.add(user2);
list.add(user3);
String listUserJson = JSON.toJSONString(list);
System.out.println("List<Object>集合转json字符串:" + listUserJson);
System.out.println("+++++++");
//list集合转json数组
JSONArray jsonArray = new JSONArray();
jsonArray.addAll(list);
// jsonArray.add(user2);
// jsonArray.add(user3);
JSONObject temp = (JSONObject) JSONObject.toJSON(jsonArray.get(1));
System.out.println(temp.get("name") + "-------" + temp.get("age"));
System.out.println("+++++++");
//json字符串转json对象
String jsonStr = "{\"age\":\"16\",\"name\":\"aigo4\"}";
JSONObject JSONObject2 = JSONObject.parseObject(jsonStr);
System.out.println(JSONObject2.get("name") + "-------" + JSONObject2.get("age"));
System.out.println("+++++++");
//json字符串转java对象
String jsonStr2 = "{\"name\":\"aigo5\",\"age\":\"17\"}";
JSONObject JSONObject3 = JSONObject.parseObject(jsonStr2);
User user4 = JSONObject.toJavaObject(JSONObject3, User.class);
System.out.println(user4.getName() + "-------" + user4.getAge());
System.out.println("+++++++");
//json字符串转list集合
String arrJsonStr = "[{\"name\":\"aigo6\",\"age\":\"18\"},{\"name\":\"aigo7\",\"age\":\"19\"}]";
List<User> userList = JSONArray.parseArray(arrJsonStr,User.class);
for(User userTemp: userList){
System.out.println(userTemp.getName()+"-----" + userTemp.getAge());
}
}
}
class User {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public User(String name, int age) {
this.name = name;
this.age = age;
}
public User() {
}
}
ps:网络中对象的传输需要对象序列化。