数据传输除了使用xml方式,还可以使用json方式,json方式是用键值对的方式传输的。
一.服务器端。
新建一个web项目。
File ->new->Dynamic web project
新建项目后,项目目录结构如下,并在lib导入解析json需要的包
1)新建一个com.json.domain包下的类Person用来存储person数据,
public class Person {
private int id;
private String name;
private String address;
public Person() {
// TODO Auto-generated constructor stub
}
public Person(int id, String name, String address) {
super();
this.id = id;
this.name = name;
this.address = address;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
@Override
public String toString() {
return "Person [id=" + id + ", name=" + name + ", address=" + address
+ "]";
}
}
2)新建一个com.json.tools包下的JsonTools工具类,定义CreateJsonString函数创建json字符串。
public class JsonTools {
public JsonTools() {
// TODO Auto-generated constructor stub
}
/**
*
* @param key表示json字符串的头信息
* @param value泛型,是对解析的集合的类型
* @return
*/
public static String createJsonString(String key,Object value){
String resString = null;
JSONObject jsonObject = new JSONObject();
jsonObject.put(key,value);
resString = jsonObject.toString();
return resString;
}
}
3)创建一个com.json.service包下的JsonService类
用来构造json数据,以便通过2)的createJsonString函数创建字符串。
public class JsonService {
//获取一个Person的json对象
public Person getPerson(){
Person person = new Person(1001,"JACK","Beijing");
return person;
}
//获取一个List对象,这个list里边保存的都是Person
public List<Person> getListPerson(){
List<Person> list = new ArrayList<Person>();
Person person1 = new Person(1001, "jack", "guangxi");
Person person2 = new Person(1002, "rose", "guangdong");
list.add(person1);
list.add(person2);
return list;
}
//获取一个List对象,里边保存的都是String类型的变量
public List<String>