struts2 jquery xml

原创 2011年01月08日 14:53:00

1.引入下jquery.js类库 http://jquery.com/ 建立页面xmlTest.jsp

Java代码
  1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>   
  2.   
  3. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">   
  4. <html>   
  5.   <head>   
  6.     <script type="text/javascript" src="jquery/jquery.js"></script>   
  7.     <script type="text/javascript">   
  8.     function getInfo()   
  9.     {   
  10.         $.post("getXmlAction.action",   
  11.         {      
  12.             //发送参数name及值   
  13.             name: $("#name").val()   
  14.         }, function(returnedData, status)   
  15.         {        
  16.             //服务器返回成功的值   
  17.             if("success" == status)   
  18.             {     
  19.                 //根据服务器返回的xml,获取各个节点的值   
  20.                 var id = $(returnedData).find("id").text();   
  21.                 var name = $(returnedData).find("name").text();   
  22.                 var age = $(returnedData).find("age").text();   
  23.                 var address = $(returnedData).find("address").text();   
  24.                 //动态添加表格   
  25.                 var html = "<table width='60%' border='1' align='center'><tr><th>id</th><th>name</th><th>age</th><th>address</th></tr><tr align='center'><td>" + id + "</td><td>" + name + "</td><td>"+ age + "</td><td>" + address + "</td></tr></table>";   
  26.                 //获得浏览器值,先清空浏览器表格数据      
  27.                 $("body table:eq(0)").remove();   
  28.                  //把动态获取的表格添加到页面中    
  29.                 $("#theBody").append(html);   
  30.             }   
  31.         }   
  32.         );   
  33.     }   
  34.     </script>   
  35.   </head>   
  36.   <body id="theBody">   
  37.    <select id="name">   
  38.         <option value="zhangsan" selected="selected">zhangsan</option>   
  39.         <option value="lisi">lisi</option>   
  40.    </select>   
  41.    <input type="button" value="get info" onclick="getInfo();">   
  42.   </body>   
  43. </html>  


2 简单struts.xml文件的配置

Xml代码
  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2. <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">  
  3. <struts>  
  4.     <package name="struts2.1" extends="json-default">  
  5.         <action name="getXmlAction" class="com.test.action.xml.GetXmlAction"></action>  
  6.     </package>  
  7. </struts>    


3 使用dom4j创建xml文档 下载dom4j.jar引入到项目
http://www.dom4j.org/dom4j-1.6.1/

Java代码
  1. package com.test.action.xml;   
  2.   
  3. import java.io.PrintWriter;   
  4. import javax.servlet.http.HttpServletResponse;   
  5. import org.apache.struts2.ServletActionContext;   
  6. import org.dom4j.*;   
  7. import org.dom4j.io.OutputFormat;   
  8. import org.dom4j.io.XMLWriter;   
  9. import com.opensymphony.xwork2.ActionSupport;   
  10. public class GetXmlAction extends ActionSupport {   
  11.     private String name;   
  12.     public String getName() {   
  13.         return name;   
  14.     }   
  15.     public void setName(String name) {   
  16.         this.name = name;   
  17.     }   
  18.     @Override  
  19.     public String execute() throws Exception {   
  20.         //zhangsan   
  21.         Person person1 = new Person();   
  22.         person1.setId(1);   
  23.         person1.setName("zhangsan");   
  24.         person1.setAge(20);   
  25.         person1.setAddress("shanghai");   
  26.            
  27.         //lisi   
  28.         Person person2 = new Person();   
  29.         person2.setId(2);   
  30.         person2.setName("lisi");   
  31.         person2.setAge(30);   
  32.         person2.setAddress("tianjin");   
  33.            
  34.         //代表整个xml文档   
  35.         Document document = DocumentHelper.createDocument();    
  36.         //代表文档根元素   
  37.         Element rootElement = document.addElement("users");   
  38.         //增加一个注释   
  39.         rootElement.addComment("This is a comment!");          
  40.         //增加一个根元素下的一个user子元素   
  41.         Element userElement = rootElement.addElement("user");          
  42.         //增加一个user子元素的一个各个user属性子元素   
  43.         Element idElement = userElement.addElement("id");   
  44.         Element nameElement = userElement.addElement("name");   
  45.         Element ageElement = userElement.addElement("age");   
  46.         Element addressElement = userElement.addElement("address");   
  47.            
  48.         //文档节点赋值   
  49.         if("zhangsan".equals(this.name))   
  50.         {   
  51.             idElement.setText(person1.getId() + "");   
  52.             nameElement.setText(person1.getName());   
  53.             ageElement.setText(person1.getAge() + "");   
  54.             addressElement.setText(person1.getAddress());   
  55.         }   
  56.         else  
  57.         {   
  58.             idElement.setText(person2.getId() + "");   
  59.             nameElement.setText(person2.getName());   
  60.             ageElement.setText(person2.getAge() + "");   
  61.             addressElement.setText(person2.getAddress());   
  62.         }   
  63.            
  64.         //获得客户端的相应的response对象   并设置向客户端输出的格式   
  65.         HttpServletResponse response = ServletActionContext.getResponse();   
  66.         response.setContentType("text/xml; charset=utf-8");//客户端的输入格式 和字体   
  67.         response.setHeader("Cache-Control""no-cache"); //取消浏览器缓存   
  68.            
  69.         //获取向客户端输出流   
  70.         PrintWriter out = response.getWriter();   
  71.            
  72.         //dom4j的输出格式   
  73.         OutputFormat format = OutputFormat.createPrettyPrint();   
  74.         format.setEncoding("utf-8");   
  75.            
  76.         XMLWriter writer = new XMLWriter(out, format);   
  77.         //把文档格式document写到输出流中out中  返回给客户端   
  78.         writer.write(document);        
  79.         out.flush();   
  80.         out.close();           
  81.         return null;   
  82.        
  83.     }   
  84. }  

相关文章推荐

jquery+Ajax框架处理,XML,JSON,GSON对象传送!详解+案列!struts2的支持

jquery+Ajax框架处理,XML,JSON,GSON对象传送!详解+案列!struts2的支持

struts2验证(xml)课件.ppt

  • 2013年12月10日 17:51
  • 1009KB
  • 下载

Struts2 XML配置详解

1.    深入Struts2的配置文件 本部分主要介绍struts.xml的常用配置。 1.1.    包配置: Struts2框架中核心组件就是Action、拦截器等,Strut...

struts2+xml集成应用的例子

  • 2012年03月05日 15:21
  • 14KB
  • 下载

struts2.xml

  • 2013年03月28日 13:20
  • 2KB
  • 下载

Struts2 XML配置详解

深入Struts2                                                  ++YONG原创 http://blog.csdn.net/qjyong/art...

职员信息录入系统(Struts2+DOM+XML)

  • 2012年03月05日 14:28
  • 8.66MB
  • 下载

struts2 XML dtd

  • 2013年09月03日 18:59
  • 5KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:struts2 jquery xml
举报原因:
原因补充:

(最多只允许输入30个字)