【Person类】
public class Person { private String Id; private String Name; private String Sex; public String getId() { return Id; } public void setId(String id) { Id = id; } public String getName() { return Name; } public void setName(String name) { Name = name; } public String getSex() { return Sex; } public void setSex(String sex) { Sex = sex; } }【Gson实现】
public void xxx{ response.setHeader("Content-Type", "text/html; charset=utf-8");//设置编码格式 PrintWriter out = response.getWriter(); Gson gson = new Gson(); Person person = new Person();//存储数据 person.setId("1"); person.setName("aaa"); person.setSex("man"); String gsonString = gson.toJson(person); System.out.println(+gsonString); out.print(gsonString);//输出流 out.flush();//刷新流数据 out.close();//关闭流 }**【注】 1.PrintWriter将数据解析为流传输 2.Gson将数据解析为格式为键值对的字符串{“Id”:”1”,”Name”:”aaa”,”Sex”:”man”}**
javascript部分 【Json解析数据】
function jsonUse(){ var xmlhttp =new XMLHttpRequest(); xmlhttp.onreadystatechange = function(){ if(xmlhttp.readyState==4){ var data = xmlhttp.responseText; alert(data);//{"Id":"1","Name":"aaa","Sex":"man"} var dataArray = eval("("+data+")"); alert(dataArray.Id+"-"+dataArray.Name+"-"+dataArray.Sex);//1-aaa-man } }; xmlhttp.open("post","JsonServlet",false); xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); xmlhttp.send(null); }** } 【注】 1.接收到的值通过eval格式化数据 var dataArray = eval(“(“+data+”)”); 2.解析后的数据通过 a.b 获取数据 **