下载fastjson.jar
注意点:将json反转回对象时,对象必须有不带参数的构造方法,各个属性需要有set方法
应该是通过反射的方法 创建对象,然后再通过set方法将属性值注入
上代码:import com.alibaba.fastjson.JSON;
public class JSONTest {
public JSONTest(String str, int num, List<String> lists,
Map<String, String> maps) {
super();
this.str = str;
this.num = num;
this.lists = lists;
this.maps = maps;
}
public JSONTest(){
}
public String getStr() {
return str;
}
public void setStr(String str) {
this.str = str;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public List<String> getLists() {
return lists;
}
public void setLists(List<String> lists) {
this.lists = lists;
}
public Map<String, String> getMaps() {
return maps;
}
public void setMaps(Map<String, String> maps) {
this.maps = maps;
}
private String str;
private int num;
private List<String> lists;
private Map<String,String> maps;
public String toString(){
return str+num+lists.get(0)+lists.get(1);
}
public String ToJSON(){
return JSON.toJSONString(this);
}
public static void main(String[] args) {
List<String> lists=new ArrayList<String>();
lists.add("meng");
lists.add("xin");
Map<String,String> maps=new HashMap<String,String>();
maps.put("key1", "value1");
maps.put("key2", "value2");
JSONTest json=new JSONTest("gao",23,lists,maps);
String strjson=json.ToJSON();
System.out.println(strjson);
JSONTest josn1=(JSONTest)JSON.parseObject(strjson, JSONTest.class);
System.out.println(josn1.toString());
}
}