com.ajax.entity.UserInfo:
- packagecom.ajax.entity;
- publicclassUserInfo{
- privateStringuserId;
- privateStringuserName;
- /**
- *@returntheuserId
- */
- publicStringgetUserId(){
- returnuserId;
- }
- /**
- *@paramuserIdtheuserIdtoset
- */
- publicvoidsetUserId(StringuserId){
- this.userId=userId;
- }
- /**
- *@returntheuserName
- */
- publicStringgetUserName(){
- returnuserName;
- }
- /**
- *@paramuserNametheuserNametoset
- */
- publicvoidsetUserName(StringuserName){
- this.userName=userName;
- }
- publicUserInfo(StringuserId,StringuserName){
- this.userId=userId;
- this.userName=userName;
- }
- }
com.ajax.servlet.JsonServlet:
- packagecom.ajax.servlet;
- importjava.io.IOException;
- importjava.io.PrintWriter;
- importjava.util.ArrayList;
- importjava.util.List;
- importjavax.servlet.ServletException;
- importjavax.servlet.http.HttpServlet;
- importjavax.servlet.http.HttpServletRequest;
- importjavax.servlet.http.HttpServletResponse;
- importcom.ajax.entity.UserInfo;
- /**
- *ServletimplementationclassJsonServlet
- */
- publicclassJsonServletextendsHttpServlet{
- privatestaticfinallongserialVersionUID=1L;
- /**
- *@seeHttpServlet#HttpServlet()
- */
- publicJsonServlet(){
- super();
- //TODOAuto-generatedconstructorstub
- }
- /**
- *@seeHttpServlet#doGet(HttpServletRequestrequest,HttpServletResponseresponse)
- */
- protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{
- doPost(request,response);
- }
- /**
- *@seeHttpServlet#doPost(HttpServletRequestrequest,HttpServletResponseresponse)
- */
- protectedvoiddoPost(HttpServletRequestrequest,IOException{
- //设置编码格式
- response.setContentType("text/html;charset=utf-8");
- request.setCharacterEncoding("utf-8");
- PrintWriterout=response.getWriter();
- List<UserInfo>users=getUsers();
- out.print("[");
- for(inti=0;i<users.size()-1;i++){
- out.print("{id:'"+users.get(i).getUserId()+"',name:'"+users.get(i).getUserName()+"'},");
- }
- out.print("{id:'"+users.get(users.size()-1).getUserId()+"',name:'"+users.get(users.size()-1).getUserName()+"'}");
- out.print("]");
- out.flush();
- out.close();
- }
- /**
- *构建用户信息
- */
- privateList<UserInfo>getUsers(){
- List<UserInfo>users=newArrayList<UserInfo>();
- UserInfouser=newUserInfo("U014","欧阳公");
- UserInfouser1=newUserInfo("U024","东门吹吹");
- UserInfouser2=newUserInfo("U044","西门庆");
- UserInfouser3=newUserInfo("U074","网看看");
- users.add(user);
- users.add(user1);
- users.add(user2);
- users.add(user3);
- returnusers;
- }
- }
com.ajax.servlet.XmlServlet:
- packagecom.ajax.servlet;
- importjava.io.IOException;
- importjava.io.PrintWriter;
- importjava.util.ArrayList;
- importjava.util.List;
- importjavax.servlet.ServletException;
- importjavax.servlet.http.HttpServlet;
- importjavax.servlet.http.HttpServletRequest;
- importjavax.servlet.http.HttpServletResponse;
- importcom.ajax.entity.UserInfo;
- /**
- *ServletimplementationclassXmlServlet
- */
- publicclassXmlServletextendsHttpServlet{
- privatestaticfinallongserialVersionUID=1L;
- /**
- *@seeHttpServlet#HttpServlet()
- */
- publicXmlServlet(){
- super();
- //TODOAuto-generatedconstructorstub
- }
- /**
- *@seeHttpServlet#doGet(HttpServletRequestrequest,IOException{
- //设置编码格式
- response.setContentType("text/xml;charset=utf-8");
- request.setCharacterEncoding("utf-8");
- PrintWriterout=response.getWriter();
- List<UserInfo>users=getUsers();
- out.print("<?xmlversion='1.0'encoding='UTF-8'?>");
- out.print("<userInfos>");
- for(UserInfouser:users){
- out.print("<userid='"+user.getUserId()+"'>"+user.getUserName()+"</user>");
- }
- out.print("</userInfos>");
- out.flush();
- out.close();
- }
- /**
- *构建用户信息
- */
- privateList<UserInfo>getUsers(){
- List<UserInfo>users=newArrayList<UserInfo>();
- UserInfouser=newUserInfo("U014","网看看");
- users.add(user);
- users.add(user1);
- users.add(user2);
- users.add(user3);
- returnusers;
- }
- }
/Ajax_XML_JSON/WebContent/json.jsp:
- <%@pagelanguage="java"contentType="text/html;charset=UTF-8"
- pageEncoding="UTF-8"%>
- <!DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <Metahttp-equiv="Content-Type"content="text/html;charset=UTF-8">
- <title>Inserttitlehere</title>
- <scripttype="text/javascript">
- //定义全局异步请求对象的句柄
- varxmlHttpRequest;
- //定义创建异步请求对象的函数
- functioncreateXMLHttpRequest(){
- if(window.XMLHttpRequest){
- xmlHttpRequest=newXMLHttpRequest();
- }elseif(winodw.ActiveXObject){
- try{
- xmlHttpRequest=newActiveXObject("Microsoft.XMLHTTP");
- }catch(e){
- xmlHttpRequest=newActiveXObject("Msxml2.XMLHTTP");
- }
- }
- }
- //定义发送请求的函数
- functionsendRequest(){
- if(xmlHttpRequest==null){
- createXMLHttpRequest();
- }
- //指定请求得到响应后处理响应结果的回调函数
- xmlHttpRequest.onreadystatechange=callBack;
- //打开请求
- xmlHttpRequest.open("GET","jsonServlet");
- //发送请求
- xmlHttpRequest.send(null);
- }
- //定义回调函数
- functioncallBack(){
- if(xmlHttpRequest.readyState==4&&xmlHttpRequest.status==200){
- alert(xmlHttpRequest.responseText);
- //把json字符串转换为JS对象
- varuserInfos=eval("("+xmlHttpRequest.responseText+")");
- varcontent="id----------------name<br/>";
- for(vari=0;i<userInfos.length;i++){
- varid=userInfos[i].id;
- varname=userInfos[i].name;
- content+=id+"----------------"+name+"<br/>";
- }
- document.getElementById("msg").innerHTML=content;
- }
- }
- </script>
- </head>
- <body>
- <fieldsetstyle="width:50%">
- <legend>Ajax解析JSON</legend>
- <inputtype="button"value="ajax解析JSON"onclick="sendRequest();"/><br/>
- <divid="msg"></div>
- </fieldset>
- </body>
- </html>
/Ajax_XML_JSON/WebContent/xml.jsp:
- <%@pagelanguage="java"contentType="text/html;charset=UTF-8"
- pageEncoding="UTF-8"%>
- <!DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <Metahttp-equiv="Content-Type"content="text/html;charset=UTF-8">
- <title>Inserttitlehere</title>
- <scripttype="text/javascript">
- //定义全局异步请求对象的句柄
- varxmlHttpRequest;
- //定义创建异步请求对象的函数
- functioncreateXMLHttpRequest(){
- if(window.XMLHttpRequest){
- xmlHttpRequest=newXMLHttpRequest();
- }elseif(winodw.ActiveXObject){
- try{
- xmlHttpRequest=newActiveXObject("Microsoft.XMLHTTP");
- }catch(e){
- xmlHttpRequest=newActiveXObject("Msxml2.XMLHTTP");
- }
- }
- }
- //定义发送请求的函数
- functionsendRequest(){
- if(xmlHttpRequest==null){
- createXMLHttpRequest();
- }
- //指定请求得到响应后处理响应结果的回调函数
- xmlHttpRequest.onreadystatechange=callBack;
- //打开请求
- xmlHttpRequest.open("GET","xmlServlet");
- //发送请求
- xmlHttpRequest.send(null);
- }
- //定义回调函数
- functioncallBack(){
- if(xmlHttpRequest.readyState==4&&xmlHttpRequest.status==200){
- //alert(xmlHttpRequest.responseXML);
- //获取xml文件根节点元素对象
- varrootElement=xmlHttpRequest.responseXML;
- //获取根节点下面所有子节点对象
- varuserInfos=rootElement.getElementsByTagName("user");
- //解析获取的子节点组成数组
- /*<userInfos>
- <userid="U014">欧阳公</user>
- <userid="U024">东门吹吹</user>
- <userid="U044">西门庆</user>
- <userid="U074">网看看</user>
- </userInfos>*/
- //userInfos[i].getAttribute("id")获取当前遍历元素id属性对应值
- //userInfos[i].firstChild.nodeValue获取当前遍历元素第一个子节点对应值
- varcontent="id-----------------name<br/>";
- for(vari=0;i<userInfos.length;i++){
- //alert("id:"+userInfos[i].getAttribute("id")+"name:"+userInfos[i].firstChild.nodeValue);
- varid=userInfos[i].getAttribute("id");
- varname=userInfos[i].firstChild.data;
- content+=id+"-----------------"+name+"<br/>";
- }
- document.getElementById("msg").innerHTML=content;
- }
- }
- </script>
- </head>
- <body>
- <fieldsetstyle="width:50%">
- <legend>Ajax解析XML</legend>
- <inputtype="button"value="ajax解析XML"onclick="sendRequest();"/><br/>
- <divid="msg"></div>
- </fieldset>
- </body>
- </html>