class Model对象:
package com.tc.mymodel;
/**
* @author hyman
* @see 与Json数据对应的JavaBean
*/
public class Model {
private int id;
private String name;
private String sex;
private String address;
/*
* getter And setter 方法
*/
}
Json对象的操作:
class JSONOperation:
package com.tc.mymodel;
import java.util.ArrayList;
import java.util.List;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
/**
* @see Json对象的转换
* Json转换成String
* Json转换成JavaBean
* @author hyman
*
*/
public class JSONOperation {
@SuppressWarnings("unchecked")
public static void main(String[] args) {
//创建两个JavaBean
Model model = new Model();
model.setId(1);
model.setName("Angle");
model.setSex("man");
model.setAddress("China ShenZhen");
Model model2 = new Model();
model2.setId(2);
model2.setName("Kily");
model2.setSex("women");
model2.setAddress("China GuiZhou");
//将JavaBean放到ArrayList中
List<Model> models = new ArrayList<Model>(0);
models.add(model);
models.add(model2);
//把ArrayList对象转换成JSONArray对象
JSONArray jsonArray = JSONArray.fromObject(models);
//将JSONArray对象转换成String数据格式
String jsonStr = jsonArray.toString();
//将转换的String对象打印输出,查看
System.out.println(jsonStr);
System.out.println("\n\n---------------------华丽的分割线----------------------");
//将JSONArray转换成ArrayList对象
List<Model> models2 = JSONArray.toList(JSONArray.fromObject(jsonStr), Model.class);
//循环遍历ArrayList里的对象(从JsonArray转换的ArrayList对象数据)
for (int i = 0; i < models2.size(); i++) {
Model model3 = models2.get(i);
System.out.println("id: " + model3.getId());
System.out.println("name: " + model3.getName());
System.out.println("sex: " + model3.getSex());
System.out.println("address: " + model3.getAddress());
System.out.println("=========================================================");
}
//对单个对象的操作,不作过多注释了.
String jsonStr2 = JSONObject.fromObject(model).toString();
System.out.println(jsonStr2);
System.out.println("\n\n----------------华丽的分割线---------------------");
Model model_1 = (Model) JSONObject.toBean(JSONObject.fromObject(jsonStr2), Model.class);
System.out.println("id: " + model_1.getId());
System.out.println("name: " + model_1.getName());
System.out.println("sex: " + model_1.getSex());
System.out.println("address: " + model_1.getAddress());
}
}
备注: 还需要以下这几个Jar包的支持:
在网页上对JSON对象操作可以在下载JSON2-js文件的JavaScript文件.