1.:XMLHttpRequest 对象响应服务器
onreadystatechange 事件 当请求被发送到服务器时,我们需要执行一些基于响应的任务。 每当 readyState 改变时,就会触发 onreadystatechange 事件。 readyState 属性存有 XMLHttpRequest 的状态信息。 下面是 XMLHttpRequest 对象的三个重要的属性: onreadystatechange存储函数(或函数名),每当 readyState 属性改变时,就会调用该函数。 readyState 存有 XMLHttpRequest 的状态。从 0 到 4 发生变化。 0: 请求未初始化 1: 服务器连接已建立 2: 请求已接收 3: 请求处理中 4: 请求已完成,且响应已就绪 status 200:"OK" 404: 未找到页面 在 onreadystatechange 事件中,我们规定当服务器响应已做好被处理的准备时所执行的任务。
如需获得来自服务器的响应,请使用 XMLHttpRequest 对象的 responseText 或 responseXML 属性。 属性 描述 responseText 获得字符串形式的响应数据。 responseXML 获得 XML 形式的响应数据。
Json
一.JSON的特点
1.JSON:JavaScript 对象表示法(JavaScriptObjectNotation) 。
2.JSON 是存储和交换文本信息的语法。类似 XML。
3.JSON 比 XML 更小、更快,更易解析。
二.Json 格式语法
JSON 对象 {"name":"张三","age":22}
JSON 数组 { "student": [ {"name":"张三","age":22}, {"name":"李四","age":23}, {"name":"王五","age":24} ] }
JSON 嵌套 { "student": [ {"name":"张三","age":22,"score":{"chinese":90,"math":100,"english":80}}, {"name":"李四","age":23,"score":{"chinese":70,"math":90,"english":90}}, {"name":"王五","age":24,"score":{"chinese":80,"math":60,"english":90}} ] }
把 Json 串换成 Json 对象 vardataObj=eval("("+data+")");//转换为 json 对象
具体实例如下
PrintWriter out=response.getWriter();
JSONObject resultJson=new JSONObject();
JSONArray jsonArray=new JSONArray();
JSONObject jsonObject1=new JSONObject();
jsonObject1.put("name", "张三");
jsonObject1.put("age", 22);
JSONObject scoreObject1=new JSONObject();
scoreObject1.put("chinese", 90);
scoreObject1.put("math", 100);
scoreObject1.put("english", 80);
jsonObject1.put("score", scoreObject1);
JSONObject jsonObject2=new JSONObject();
jsonObject2.put("name", "李四");
jsonObject2.put("age", 23);
JSONObject scoreObject2=new JSONObject();
scoreObject2.put("chinese", 70);
scoreObject2.put("math", 90);
scoreObject2.put("english", 90);
jsonObject2.put("score", scoreObject2);
JSONObject jsonObject3=new JSONObject();
jsonObject3.put("name", "王五");
jsonObject3.put("age", 24);
JSONObject scoreObject3=new JSONObject();
scoreObject3.put("chinese", 80);
scoreObject3.put("math", 60);
scoreObject3.put("english", 90);
jsonObject3.put("score", scoreObject3);
jsonArray.add(jsonObject1);
jsonArray.add(jsonObject2);
jsonArray.add(jsonObject3);
resultJson.put("students", jsonArray);
out.println(resultJson);
out.flush();
out.close();