代码先锋网 代码片段及技术文章聚合

dom4j解析XML文件

技术标签: java  dom4j

需要引入dom4j的jar包

struts.xml(工程src目录下)
<?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="user" extends="struts-default" namespace="/user">
<action name="*User" class="com.test.user.action.UserAction" method="{1}User">
<result name="success" type="chain">
<param name="actionName">queryUsers</param>
<param name="namespace">/user</param>
</result>
<result name="error" >/error.jsp</result>
</action>
<action name="queryUsers" class="com.test.user.action.UserAction" method="queryUser">
<result name="users">/show.jsp</result>
</action>
</package>
</struts>


[b]解析xml[/b]
import java.util.List;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;


public class Dom4jReaderXML {
@SuppressWarnings("unchecked")
public static void main(String[] args) throws DocumentException {
SAXReader saxReader = new SAXReader();
//1.读取xml文件
Document doc = saxReader.read(Dom4jReaderXML.class.getClassLoader().getResourceAsStream("struts.xml"));
//还可以通过下面方法读取
//Document doc = saxReader.read("src/struts.xml");
//以下两种方式是通过绝对路径读取xml文件
//String path = "D:/MyEclipse 8.6/spring/springmvc/src/struts.xml";
//Document doc = saxReader.read(path);
//Document doc = saxReader.read(new File(path));
Element root = doc.getRootElement();//获取根元素struts
Element element = root.element("package");//获取元素package
//System.out.println(element.asXML());//获取package节点的内容
System.out.println("package name=" + element.attributeValue("name"));
//遍历元素package下所有的action元素
for(Element action_element : (List<Element>)element.elements("action")) {
//获取元素action的属性
System.out.print(" action name=" + action_element.attributeValue("name"));
System.out.print(" class=" + action_element.attributeValue("class"));
System.out.println(" method=" + action_element.attributeValue("method"));
//遍历元素action下所有的result元素
for(Element rusult_element : (List<Element>)action_element.elements("result")) {
//获取元素result的属性
System.out.print(" result name=" + rusult_element.attributeValue("name"));
if(rusult_element.isTextOnly()) {
System.out.println(" value=" + rusult_element.getText());
} else {
System.out.println();
//遍历元素result下所有的param元素
for(Element param_elment : (List<Element>)rusult_element.elements("param")) {
//获取元素param的属性
System.out.print(" param name=" + param_elment.attributeValue("name"));
System.out.println(" value=" + param_elment.getText());
}
}
}
}
}
}


[b]运行结果:[/b]
package name=user
action name=*User class=com.test.user.action.UserAction method={1}User
result name=success
param name=actionName value=queryUsers
param name=namespace value=/user
result name=error value=/error.jsp
action name=queryUsers class=com.test.user.action.UserAction method=queryUser
result name=users value=/show.jsp
版权声明:本文为chen1540原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/chen1540/article/details/84225533

智能推荐

Dom4j解析xml文件

导入dom4j.jar包            ...

Dom4j解析xml文件

dom4j是一个Java的XML API,类似于jdom,用来读取的XML文件,由于它是将文件解析完存放在内存当中的,所以不适合解析大的XML文件,但就方便性和性能方面,一定程度要优于JDK中Domcument和SAX解析的。下面我就用dom4j来对xml文件进行遍历,感兴趣的同学可以看一***释很详细 被解析的XML文件studentInfo.xml   首先创建File,获取到根节点    &...

dom4j解析xml文件

引包:...

DOM4j解析XML文件

XML文件样例: 实体类: DOM4j解析代码: 注意,因解析过程中,采用TreeSet存储book,所以实体类需要实现Comparable接口,并实现compareTo方法 应用dom4j解析xml文件的时候,需要外部jar包:dom4j-2.0.0-RC1.jar 解析结果:...

dom4j解析xml文件

文章目录 介绍 使用方法 介绍 dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的。dom4j是一个十分优秀的JavaXML API,具有性能优异、功能强大和极其易使用的特点,它的性能超过sun公司官方的dom技术,同时它也是一个开放源代码的软件,可以在SourceForge上找到它。在IBM developerWorks上面还可以找到一篇文章,对主流的Java X...

猜你喜欢

DOM4J解析XML文件

首先导入DOM4J.jar包 xml文件:...

解析xml文件——dom4j

继解析xml文件——简介,在xml文件的4种解析方式中,在不考虑大型文档的前提下DOM4J方式性能最佳,也最容易实现。 xml文件: 以上述xml文件为例,用DOM4J方式对其解析,并将解析结果保存到自定义的数据结构中。 需要下载dom4j.jar!!!!! 代码实例: 1. 定义数据结构 2.解析xml文件 3.main方法 4. 运行结果: 5. 总结: 1). 在方法...

dom4j解析xml文件

xml体现形式 dom4j解析xml文件...

DOM4j解析xml文件

准备:dom4j的jar包 对于DOM4j的浅显的感知: 解析xml文件,在对于子节点中有子节点的情况,则要提前知道该节点的名称 dom4j将返回对象封装成 list 对象 或者 迭代的对象,方便获取相关的值 java代码: xml文件格式:...

Android 使用Lottie的三个小技巧

Android 使用Lottie的三个小技巧 Shawn 文章目录 Android 使用Lottie的三个小技巧 I 开启硬件加速 II 通过添加AnimatorListener来控制动画行为 III 通过设置播放速度来实现动画倒放 I 开启硬件加速 开启硬件加速是个提升lottie动画表现效果的一个好办法,在我的老手机上,不开硬件加速就跟幻灯片一样. II 通过添加AnimatorListene...