`

Struts2与XML(dom4j)开发

 
阅读更多
struts2.xml配置
<action name="getXmlAction" class="com.test.action.xml.GetXmlAction"></action>

action对象:
package com.test.action.xml;

import java.io.PrintWriter;

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.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 {
Person person1 = new Person();
person1.setId(1);
person1.setName("张三");
person1.setAge(20);

Person person2 = new Person();
person2.setId(2);
person2.setName("lisi");
person2.setAge(30);

Document document = DocumentHelper.createDocument();

Element rootElement = document.addElement("user");

rootElement.addComment("This is comment");

Element userElement = rootElement.addElement("user");

Element idElement = userElement.addElement("id");
Element nameElement = userElement.addElement("name");
Element ageElement = userElement.addElement("age");

if("张三".equals(this.name)){
idElement.setText(person1.getId() + "");
nameElement.setText(person1.getName());
ageElement.setText(person1.getAge()+"");
}else{
idElement.setText(person2.getId() + "");
nameElement.setText(person2.getName());
ageElement.setText(person2.getAge()+"");
}

HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("text/xml; charset=utf-8");
response.setHeader("cache-Control", "no-cache");

PrintWriter out = response.getWriter();

OutputFormat format = OutputFormat.createPrettyPrint();

format.setEncoding("utf-8");

XMLWriter write = new XMLWriter(out,format);
write.write(document);

out.flush();
out.close();


return null;
}
}


package com.test.action.xml;

public class Person {

private int id;
private String name;
private int age;

public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
分享到:
评论

相关推荐

    Dom4j解析struts2框架的struts.xml

    本篇文章将深入探讨如何使用Dom4j这个XML处理库来解析`struts.xml`,以便自定义和配置Struts2框架。 Dom4j是一个灵活且功能丰富的Java库,专门用于处理XML文档。它提供了全面的API,可以方便地读取、写入、修改和...

    dom4j解析struts.xml需要的包装类

    总结起来,`dom4j`是解析XML文件的强大工具,而`ActionWrapper`、`PackageWrapper`和`ResultWrapper`则是对`struts.xml`配置信息的抽象,它们有助于简化和优化Struts2应用的配置管理。通过使用这些包装类,我们可以...

    XML Dom4j类库

    6. **集成与应用**:在JavaWeb项目中,Dom4j可以用于处理各种配置文件,如Spring的bean配置、Struts的action配置等。此外,它也广泛应用于数据交换、文件解析、网络通信等领域。 7. **性能优化**:尽管DOM模型可能...

    DOM4J解析XML时DTD路径问题

    ### DOM4J解析XML时DTD路径问题 在处理XML文件时,经常需要用到DOM4J这样的库来进行解析。当XML文件包含DTD(Document Type Definition)声明时,DOM4J默认会尝试从指定的URL加载DTD文件来进行验证。这通常是为了...

    zTree树型菜单+Dom4j解析XML+struts2+spring整合_完整树型菜单权限管理案例(附源代码+API学习文档)

    前台页面展示用zTree插件,后台数据用XML保存,利用Dom4j进行解析,涉及到了对XML的增、删、改等等特别需求的技术,并用struts2+spring进行整合项目,源代码中有非常完整的注释,导入myEclipse部署运行,即可从...

    dom4j jar文件

    - **Struts框架**:Struts的action配置、result配置等也是XML,DOM4J可以方便地读取和操作这些配置。 - **Web服务**:在SOAP消息处理中,DOM4J用于解析和构建XML响应。 7. **性能和效率** DOM4J的设计注重性能和...

    struts2 jquery xml

    Struts2 jQuery XML 是一个基于Java的Web开发框架的组合,它将Apache Struts2的MVC架构与jQuery库结合,提供了丰富的用户界面组件和更流畅的AJAX交互。Struts2是一个强大的、灵活的MVC框架,而jQuery则简化了...

    struts dom4j json gson xml 拦截器 类型转换

    Struts、DOM4J、JSON、Gson与XML都是在IT行业中常见的技术,尤其是在Web开发领域。这些技术分别扮演着不同的角色,共同构建了高效、灵活的Web应用程序。以下是关于这些技术的详细解释: 1. **Struts**: Struts是...

    dom4j-1.6.1+hibernate3的jar包

    DOM4J和Hibernate3是Java开发中的两个重要组件,它们在构建企业级应用程序,特别是使用SSH(Struts、Spring、Hibernate)框架时起着至关重要的作用。SSH是一种流行且强大的Web应用开发架构,用于实现MVC(Model-View...

    struts+spring+hibernate+log4j+dom4j等源码

    Struts、Spring、Hibernate、Log4j和Dom4j是Java开发中常用的一系列框架和技术,它们在构建大型企业级应用时发挥着至关重要的作用。接下来,我们将详细探讨这些技术的核心概念、功能以及它们如何协同工作。 1. ...

    dom4j+jstl+beanUtils+log4j

    在Web开发领域,DOM4J、JSTL、BeanUtils和Log4j是四个非常重要的工具库,它们各自为开发者提供了强大的功能支持。下面将详细解释这些库的主要用途和使用方法。 1. DOM4J: DOM4J是一个Java库,用于处理XML文档。它...

    j2ee dom4j JavaScript struts2帮助文档

    《j2ee dom4j JavaScript struts2帮助文档》是一个包含多个技术领域的综合资源包,主要涉及Java企业级开发中的核心技术和工具。该压缩包包含了以下几个关键文件: 1. **J2EE研究文集.chm**:这是一部关于Java企业版...

    zTree树型菜单+Dom4j解释XML+struts2+spring整合_完整案例(附源代码+API学习文档)

    前台页面展示用zTree插件,后台数据用XML保存,利用Dom4j进行解析,涉及到了对XML的增、删、改等等特别需求的技术,并用struts2+spring进行整合项目,源代码中有非常完整的注释,导入myeclipse部署运行,即可从...

    jxl.jar;dom4j.jar;jsonplugin-0.34.jar;junit-3.8.2.jar;log4j-1.2.14.jar;struts2-codebehind-plugin-2.0

    这些库的组合表明这是一个可能用于企业级Java Web开发的环境,涵盖了数据处理(jxl)、XML操作(dom4j)、JSON序列化、单元测试(JUnit)、日志管理(Log4j)以及MVC框架(Struts2)等关键方面。对于理解和构建此类...

    dom4j.doc技术文档 教程

    DOM4J是一个开放源代码项目,在许多流行的Java应用中被广泛使用,如Struts2、Hibernate、Spring框架等。 #### 二、DOM4J 快速入门 ##### 2.1 导入jar包 - **Web Project**: - 将DOM4J的jar包复制到项目的`Web...

    spring3+hibernate4+struts2+dbcp+mysql+json+ehcache+dom4j 合集包

    这是一个整合了多个核心技术的Java Web开发资源包,涵盖了Spring 3、Hibernate 4、Struts 2、DBCP、MySQL、JSON、Ehcache以及DOM4J等组件。以下将详细解析这些技术及其在Web开发中的应用。 1. **Spring框架**:...

    三大框架+log4j+dom4j

    `dom4j`是处理XML文档的库,它提供了强大的DOM、SAX和DOM4J的API,用于读写XML文件。 `ognl-2.7.3.jar`是Object-Graph Navigation Language的缩写,是一个表达式语言,常用于Struts2中进行属性绑定和数据传递。`...

    dom4j使用简介

    DOM4J广泛应用于Java项目中,如Web开发(Spring MVC、Struts等)、数据交换(如SOAP消息处理)、配置文件处理、XML数据的读写等。其灵活性和高效性使其成为处理XML的理想工具。 总的来说,DOM4J为Java开发者提供了...

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

    本资源是一个简单的职员信息录入系统。采用了 Struts2 + DOM 的技术。系统遵循MVC架构。通过Document Object Model文档对象模型存取XML文档的内容。实现XML文档的数据的新增,修改,删除和查询。

    DOM4J、ECPLISE、EJB、HIBEMATE、J2EE、JBUILDER、JDBC、JINIJSP、LOG4J、STRUTS、TOCAT、WEBLOICWEBPHERE、XML等技术文档,绝对秘籍!

    DOM4J、ECPLISE、EJB、HIBEMATE、J2EE、JBUILDER、JDBC、JINIJSP、LOG4J、STRUTS、TOCAT、WEBLOICWEBPHERE、XML等技术文档,绝对秘籍!

Global site tag (gtag.js) - Google Analytics