前端应用场景:
var student = {"name":username,"sex":sex,"birthday":birthday};
var param = {op: "add", student: JSON.stringify(student)};
$.post(servletUrl, param, function (result) {
console.log(result);
var data = JSON.parse(result);
这里我们可以看到向后台发请求,是通过传递Json对象给后台,在传递之前先要把学生对象封装成字符串形式,最后是得到后台响应的Json返回值(也是字符串)。
后台应用场景:
Student student = JSON.parseObject(req.getParameter("student"),Student.class);
int effect = StudentDAO.insert(student);
JSONObject json = new JSONObject();
if(effect == -1){
json.put("success",false);
json.put("msg","添加数据错误");
}else{
json.put("success",true);
json.put("effect",effect);
}
return json.toString();
这是与前面对应的,在前端发来一个Json对象请求时,后台通过解析可以得到一个学生对象(第一句中req.getParameter("student")就是前端传过来的字符串形式),然后进行操作;后面的是创建了一个Json对象,然后根据得到结果的不同来给这个新建的对象中加数据。
总结:Json在前后端传输数据的过程中是通过字符串的形式来传递的,然后在抵达后又通过自有解析方式,来重新得到我们需要的对象值,从而达到数据传递的目的。