fastjson使用public修飾 private轉化Object有問題 注意事項

import java.util.ArrayList;
import java.util.List;

import com.alibaba.fastjson.JSON;

class User {
	public Long id;
	public String name;
	int age;
	public String adress;
	List<String> teachers;
	public void setTeachers(List<String> teachers) {
		this.teachers = teachers;
	}
	public List<String> getTeachers(){
		return this.teachers;
	}
}

public class Test {
	public static void main(String[] args) {
		List<String> teachers = new ArrayList<>();
		for (int i = 0; i < 5; i++) {
			teachers.add(i+"");
		}
		User rootUser = new User();
		rootUser.id = 3L;
		rootUser.name = "root";
		rootUser.teachers = teachers;
//		rootUser.setTeachers(teachers);
		
		String jsonString = JSON.toJSONString(rootUser);

		System.out.println(jsonString);
		
		User user = JSON.parseObject(jsonString, User.class);

		System.out.println(user.id);
//		System.out.println(user.getTeachers());
		System.out.println(user.teachers);
		
	}
}


版本:fastjson.jar 1.1.33

字段爲非String 的Object時,若不是使用public修飾,則必須有對應的get、set方法,


字段類選爲boolean時,必須使用public;


綜合各種考慮,應當直接全部使用public修飾!




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