1.引入下jquery.js类库 http://jquery.com/ 建立页面xmlTest.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="jquery/jquery.js"></script>
<script type="text/javascript">
function getInfo()
{
$.post("getXmlAction.action",
{
//发送参数name及值
name: $("#name").val()
}, function(returnedData, status)
{
//服务器返回成功的值
if("success" == status)
{
//根据服务器返回的xml,获取各个节点的值
var id = $(returnedData).find("id").text();
var name = $(returnedData).find("name").text();
var age = $(returnedData).find("age").text();
var address = $(returnedData).find("address").text();
//动态添加表格
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>";
//获得浏览器值,先清空浏览器表格数据
$("body table:eq(0)").remove();
//把动态获取的表格添加到页面中
$("#theBody").append(html);
}
}
);
}
</script>
</head>
<body id="theBody">
<select id="name">
<option value="zhangsan" selected="selected">zhangsan</option>
<option value="lisi">lisi</option>
</select>
<input type="button" value="get info" onclick="getInfo();">
</body>
</html>
2 简单struts.xml文件的配置
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<package name="struts2.1" extends="json-default">
<action name="getXmlAction" class="com.test.action.xml.GetXmlAction"></action>
</package>
</struts>
3 使用dom4j创建xml文档 下载dom4j.jar引入到项目
http://www.dom4j.org/dom4j-1.6.1/
package com.test.action.xml;
import java.io.PrintWriter;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts2.ServletActionContext;
import org.dom4j.*;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
import com.opensymphony.xwork2.ActionSupport;
public class GetXmlAction extends ActionSupport {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String execute() throws Exception {
//zhangsan
Person person1 = new Person();
person1.setId(1);
person1.setName("zhangsan");
person1.setAge(20);
person1.setAddress("shanghai");
//lisi
Person person2 = new Person();
person2.setId(2);
person2.setName("lisi");
person2.setAge(30);
person2.setAddress("tianjin");
//代表整个xml文档
Document document = DocumentHelper.createDocument();
//代表文档根元素
Element rootElement = document.addElement("users");
//增加一个注释
rootElement.addComment("This is a comment!");
//增加一个根元素下的一个user子元素
Element userElement = rootElement.addElement("user");
//增加一个user子元素的一个各个user属性子元素
Element idElement = userElement.addElement("id");
Element nameElement = userElement.addElement("name");
Element ageElement = userElement.addElement("age");
Element addressElement = userElement.addElement("address");
//文档节点赋值
if("zhangsan".equals(this.name))
{
idElement.setText(person1.getId() + "");
nameElement.setText(person1.getName());
ageElement.setText(person1.getAge() + "");
addressElement.setText(person1.getAddress());
}
else
{
idElement.setText(person2.getId() + "");
nameElement.setText(person2.getName());
ageElement.setText(person2.getAge() + "");
addressElement.setText(person2.getAddress());
}
//获得客户端的相应的response对象 并设置向客户端输出的格式
HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("text/xml; charset=utf-8");//客户端的输入格式 和字体
response.setHeader("Cache-Control", "no-cache"); //取消浏览器缓存
//获取向客户端输出流
PrintWriter out = response.getWriter();
//dom4j的输出格式
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding("utf-8");
XMLWriter writer = new XMLWriter(out, format);
//把文档格式document写到输出流中out中 返回给客户端
writer.write(document);
out.flush();
out.close();
return null;
}
}
分享到:
相关推荐
在Struts2框架下,我们可以使用Jquery的Ajax方法向服务器发送请求,获取JSON或XML数据,然后动态更新页面的部分内容。 在"06-mvc之struts2.ppt"中,可能涵盖了以下内容: 1. Struts2框架的基本概念和架构 2. 如何...
**jQuery与Struts2整合详解** 在Web开发中,jQuery是一个强大的JavaScript库,它简化了DOM操作、事件处理、动画效果以及Ajax交互。而Struts2是一个基于MVC设计模式的Java Web框架,用于构建可维护性和可扩展性高的...
标题:"struts2 jquery插件" 描述:"Struts2-15使用JQuery插件" 在探讨Struts2与jQuery插件的结合时,我们深入分析了如何在Struts2框架中集成并利用jQuery插件来增强Web应用程序的交互性和用户体验。Struts2作为一...
2. **配置Struts2**:在`struts.xml`配置文件中添加必要的拦截器和结果类型,确保可以处理AJAX请求。 3. **使用jQuery UI组件**: - **日期选择器(DatePicker)**:例如,可以使用`,然后在JavaScript中添加`$("#...
Struts2和jQuery是两种非常重要的Web开发技术。Struts2是Java企业级应用中广泛使用的MVC(Model-View-Controller)框架,它提供了一种结构化的方式来组织和管理Web应用程序,使得开发者能够更有效地处理请求、控制...
Struts2JQueryJson是一个基于Struts2框架与jQuery库,结合JSON(JavaScript Object Notation)数据格式,实现Ajax异步加载对象数据的技术方案。在Web应用开发中,这种技术可以提升用户体验,因为它允许页面部分内容...
2. **配置与注解**:Struts 2支持XML配置和注解配置,让开发者可以选择更适合自己的方式来定义动作和结果。 3. **强大的结果类型(Result Types)**:提供了多种结果类型,如Redirect、Stream、Freemarker、JSP等,...
【购物车(struts2+jquery)】是一个典型的Web应用程序示例,主要展示了如何使用Struts2框架与jQuery库来实现动态、交互式的购物车功能。这个项目特别适合那些想要学习或加深对AJAX技术理解的开发者。接下来,我们将...
**jQuery与Struts2整合详解** 在Web开发中,jQuery是一个强大的JavaScript库,它极大地简化了JavaScript的使用,使得前端交互更加便捷高效。而Struts2作为一款成熟的MVC框架,广泛应用于Java后端开发,提供了强大的...
在Struts2环境中,jQuery可以发起异步请求到Struts2 Action,接收并处理返回的JSON数据。 3. **JSON数据交换**:在Struts2 Action中,你可以创建一个返回JSON的对象,例如: ```java public class MyAction { ...
Struts2的配置文件(struts.xml)用于定义Action、Result和拦截器链。 2. **JQuery库**:jQuery库简化了DOM操作、事件处理、动画效果和Ajax请求。它的选择器语法简单直观,可以方便地选取HTML元素。同时,jQuery...
标题 "Jquery struts2 json 实现ajax" 涉及到的是在Web开发中使用jQuery库与Struts2框架结合处理JSON数据的Ajax技术。这个主题主要关注如何通过前端的jQuery实现异步请求,与后端的Struts2框架进行交互,从而更新...
Struts2和jQuery是两种非常重要的Java Web开发技术。Struts2是一个强大的MVC框架,它简化了基于Java的企业级应用程序开发,而jQuery则是一个高效、简洁的JavaScript库,极大地提升了网页开发的效率和用户体验。在...
Struts1、Struts2和JQuery是Java Web开发中非常重要的三个库,它们各自扮演着不同的角色,共同为构建动态、交互式的Web应用程序提供强大的支持。以下是对这些技术的详细解释: **Struts1** Struts1是Apache软件基金...
在这个"struts2+ajax+jquery"的主题中,我们将深入探讨如何利用Struts2、jQuery和Ajax技术实现Web页面的异步交互。 首先,Struts2作为MVC框架,它的核心是Action,它负责处理用户的请求,并通过配置的Result返回...
这个"Struts2 JQueryJson例子 .rar"压缩包很可能是包含了一个实际的项目实例,演示了如何在Struts2框架中利用JQuery和JSON进行数据交互。下面将详细讲解Struts2、JQuery和JSON的相关知识点: 1. **Struts2框架**: ...
Struts2 jQuery Uploadify是一个整合了Struts2框架与jQuery Uploadify插件的示例项目,主要用于实现文件上传的功能。这个简单的demo展示了如何在Struts2应用中集成jQuery Uploadify,以便提供用户友好的、多文件异步...
7. **文件组织**:虽然没有提供具体的压缩包文件列表,但在实际项目中,可能包含Struts2的配置文件(如struts.xml)、Action类、JSP页面、CSS样式表和JavaScript脚本等。这些文件的合理组织对于项目的可维护性和扩展...
- 其次,配置Struts2的核心配置文件(struts.xml),启用插件并指定主题样式。 3. **使用jQuery UI组件** - 插件提供了一系列的标签库,可以直接在JSP页面中使用,例如`<s:jquery>`、`<sj:datepicker>`、`...