struts2-----ajax-------xml

1.struts的应用jar包(最简)、dom4j包

2.前台页面:ajax/ajaxSelected.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    
	<script type="text/javascript" src="../js/jquery-1.8.0.min.js"></script>
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->
	<script type="text/javascript">
		$(document).ready(function()
		{
			$("#ajaxButton").bind("click",function()
			{
				$.post("ajaxAction.action",
				{
					username:$("select[name=username]").val()
				},function(returnedData,status)
				{
						//	alert(returnedData);
							var idvalue = $(returnedData).find("id").text();
							var namevalue = $(returnedData).find("username").text();
							var agevalue = $(returnedData).find("age").text();
							 var addressvalue = $(returnedData).find("address").text();
							//alert(39);
							var html = "<table border='1'><tr><th>id</th><th>name</th><th>age</th><th>address</th></tr><tr><td>"+idvalue+"</td><td>"+namevalue+"</td><td>"+agevalue+"</td><td>"+addressvalue+"</td></table>";
							
							$("body table:eq(0)").remove();
							// alert(43);
							$("body").append(html);	
				
				});
		
			});
		 });
			
		
	</script>

  </head>
  
  <body>
    	<select name="username">
    		<option value="zhangsan">zhangsan</option>
    		<option value="lisi">lisi</option>
    	</select>
    	<input type="button" value="getINFo" id="ajaxButton">
  </body>
</html>


struts.xml
	<package name="ajax" extends="struts-default" namespace="/ajax" >
		<action name="ajaxAction" class="com.lizp.action.AjaxAction">
			
		</action>
	</package>

Action package com.lizp.action; import java.io.PrintWriter; import java.util.Date; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts2.ServletActionContext; import org.dom4j.Document; import org.dom4j.DocumentHelper; import org.dom4j.Element; import org.dom4j.io.OutputFormat; import org.dom4j.io.XMLWriter; import com.lizp.bean.Person; import com.opensymphony.xwork2.ActionSupport; public class AjaxAction extends ActionSupport { private String username; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } @Override public String execute() throws Exception { // System.out.println("this.username:"+this.username); Person person = new Person(); if("zhangsan".equals(this.username)) { person.setId(1); person.setUsername("zhangsan"); person.setAge(25); //person.setBirthday(new Date("2012-12-01")); }else { person.setId(2); person.setUsername("lis"); person.setAge(26); //person.setBirthday(new Date("2012-12-02")); } //返回一个xml的信息 Document document = DocumentHelper.createDocument(); Element message = document.addElement("message"); document.setRootElement(message); message.addComment("This is a Comment!"); Element idElement = message.addElement("id"); idElement.setText(person.getId()+""); Element usernamElement = message.addElement("username"); usernamElement.setText(person.getUsername()); Element ageElement = message.addElement("age"); ageElement.setText(person.getAge()+""); Element birthdayElement = message.addElement("birthday"); birthdayElement.setText(person.getBirthday()+""); // System.out.println("document:"+document); //拿到HttpServletResponser对象 HttpServletResponse response = ServletActionContext.getResponse(); response.setContentType("text/xml;charset=utf-8"); response.setHeader("Cache-control","no-cache"); response.setHeader("pragma","no-cache"); //拿到一个输出的对象 PrintWriter out = response.getWriter(); //格式化输出 OutputFormat oFormat = new OutputFormat(); oFormat.setEncoding("utf-8"); XMLWriter xmlWriter = new XMLWriter(out,oFormat); xmlWriter.write(document); out.flush(); out.close(); //必须返回值,此处返回个无意义的null return null ; } }




 



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值