`
mgoann
  • 浏览: 253435 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Dom4j入门指南(2)

阅读更多

Dom4j入门指南(2

 

XPath

 

XPath 是一门在 XML 文档中查找信息的语言。XPath 可用来在 XML 文档中对元素和属性进行遍历。 XPath 是 W3C XSLT 标准的主要元素,并且 XQuery 和 XPointer 同时被构建于 XPath 表达之上。因此,对 XPath 的理解是很多高级 XML 应用的基础。 下面让我们来看看dom4j对Xpath标准是怎样实现的。在dom4j中,xpath表达式可以进行描述整个Document或是任何的Node(节点),其中包括Attribute(属性)、Element。而这个功能强大而复杂的xpath标准,在dom4j中你只需要一行代码就搞定。看到这里你是不是开始心痒痒了,呵呵,不急,下面咋们来练练,看招 为了能够让大家对xpath有个清楚的认识,我从网上找了个比较复杂的xml来做示例。下面是xml原文

<?xml version="1.0" encoding="ISO-8859-1" ?>

<wml>
<template>
		<do type="options" label="Back">
				<prev/>
		</do>
</template>
<card id="JY">
<onevent type="onenterbackward">
		<prev/>
</onevent>
<do type="accept">
		<go href="#display_fav"/>
</do>
<p>Pick your fav Book:
<select name="fav" title="Stooges">
		<option value="Xiao">Xiao ao jiang hu</option>
		<option value="She">She diao ying xiong</option>
		<option value="Lu">Lu ding ji</option>
		<option value="Shen">Shen diao xia lv</option>
</select>
</p>
</card>
</wml>

 

我把它放到了D盘下,命名为example.xml。以下是代码: 

package com.mgoann.dom4j;

import java.io.File;
import java.util.Iterator;
import java.util.List;

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

public class Mydom4j {
	
	public static void main(String[] args) {
		try {
			Mydom4j dom = new Mydom4j();
			Document doc = dom.parse(new File("d:/example.xml"));
			
			dom.barXpath(doc);
		} catch (DocumentException e) {
			e.printStackTrace();
		}
	}
	
    public Document parse(File file) throws DocumentException {
        SAXReader reader = new SAXReader();
        Document document = reader.read(file);
        return document;
    }
    
        public void barXpath(Document document) {
        List selectNodes = document.selectNodes( "/wml/card/p/select/option" );
        for(Iterator it = selectNodes.iterator(); it.hasNext();) {
        	print((Element)it.next());
        }
        Node node = document.selectSingleNode( "/wml/card/p/select/option" );
        print(node);
        String value = node.valueOf( "@value" );
        print(value);
    }
    
    public void print(Node node) {
    	System.out.println("================================");
    	System.out.println(node.asXML());
    }
    
    public void print(String str) {
    	System.out.println("================================");
    	System.out.println(str);
    }


}

 

以上程序输出结果: 

================================
<option value="Xiao">Xiao ao jiang hu</option>
================================
<option value="She">She diao ying xiong</option>
================================
<option value="Lu">Lu ding ji</option>
================================
<option value="Shen">Shen diao xia lv</option>
================================
<option value="Xiao">Xiao ao jiang hu</option>
Xiao

 

 到现在大家应该对dom4j的xpath实现有个简单的认识了吧。

分享到:
评论

相关推荐

    dom4j入门资料全.rar

    **标题解析:** "dom4j入门资料全.rar" 这个标题表明这是一个关于dom4j初学者的综合资源包,包含多种类型的资料,可能是为了帮助用户快速掌握dom4j这个Java库的基础知识。 **描述解析:** "包含jar,电子书,网页...

    dom4j-jar与dom4j解析xml文档介绍

    2. **XML解析方式**:dom4j提供了两种主要的XML解析方式:SAX(Simple API for XML)和DOM(Document Object Model)。SAX是流式解析,适用于处理大型XML文件;DOM则是将整个XML文档加载到内存,适合小型或中型文档...

    dom4j完整版.zip

    压缩包中的“使用说明.txt”很可能是DOM4J的快速入门指南或API参考,它可能包含了如何导入库、创建XML文档、执行XPath查询、修改XML结构等基础用法的示例代码。对于初次使用者来说,这份文档是理解DOM4J功能和用法的...

    dom4j-1.6.1.zip

    这表明在压缩包中,除了DOM4J的库文件外,还有一个名为“index.html”的文档,它可能是一个API参考手册或者快速入门指南,帮助用户快速了解DOM4J的用法和如何与XML文件交互。通常,这样的文档会包含API函数的详细...

    Docx4j入门指南

    Docx4j的入门指南主要针对新用户,提供了文档的最新版本,可以在GitHub的docs目录中找到。当前大部分的入门文档是英文版本,但用户也可以通过机器翻译或自行翻译为其他语言。有兴趣提供翻译版本的用户,可以通过联系...

    dom4j-1.6.1

    "玄关的文档"可能是指入门或引导性质的教程文档,帮助初学者快速理解和上手dom4j。 **标签:** "dom4j"标签明确了这个压缩包的核心内容,即与dom4j相关的知识和技术。 **文件名称列表:** 虽然未提供具体的文件...

    dom4j 完整jar包 及 帮助文档

    **DOM4J完全指南** DOM4J是一款强大的Java XML API,它提供了丰富的功能,使得处理XML文档变得简单而高效。这个资源包含DOM4J的完整jar包和帮助文档,是学习和开发过程中不可或缺的工具。 **一、DOM4J基本概念** ...

    jQuery中文入门指南

    《jQuery中文入门指南》是一份面向初学者的教程,旨在帮助读者快速掌握jQuery的基本用法。该指南由Keel翻译并添加了补充说明,主要内容基于原文作者Jörn Zaefferer的作品。学习jQuery的过程中,建议参考两个重要的...

    网站需要的api合集

    2. DOM4J:DOM4J是一个流行的Java XML处理库,它提供了灵活且强大的API来操作XML文档。开发者可以通过DOM4J进行XML文档的读取、写入、修改和查询。掌握DOM4J可以帮助你在Java项目中高效地处理XML数据。 3. ...

    Java获取XML节点总结之读取XML文档节点的方法

    在Java编程中,处理XML文件是一项常见的任务,用于数据存储、配置管理或数据交换。...如果你需要进一步了解DOM4J,可以参考官方提供的帮助文档,它包含了详细的API指南和快速入门教程,能帮助你更好地掌握DOM4J的使用。

    Hibernate入门教程

    3. **必要和建议的jar库**:除了hibernate2.jar之外,还有多个jar库是必需的或建议使用的,如dom4j、CGLIB、CommonsCollections、CommonsLogging、ODMG4、EHCache以及Log4j。 - **dom4j**:用于XML解析,是...

    XML编程从入门到精通(PDF)

    8. **DOM4J和JDOM**:在Java开发中,DOM4J和JDOM是常用的XML处理库,提供了方便的API进行XML解析、操作和生成。 9. **XML与JSON**:虽然XML功能强大,但JSON因其简洁性和易用性在现代Web应用中更为流行。两者各有...

    javaweb帮助文档合集

    8. **dom4j API .chm**:dom4j是一个Java的XML处理库,提供了丰富的API用于读写XML文档。这份文档介绍了如何使用dom4j进行XML解析、操作和生成。 9. **Cascading Style Sheet 样式表中文手册.chm**:CSS是控制网页...

    北大青鸟J学士后ava基础课程学习资料

    总的来说,这套北大青鸟J学士后Java基础课程学习资料是一份全面的Java入门指南,涵盖了从基本语法到高级概念的多个层次,适合想要系统学习Java编程的初学者。通过这些资料的学习,学员不仅可以掌握Java编程,还能...

    网络机器人Java编程指南.

    利用Java的try-catch语句捕获异常,使用Log4j或SLF4J进行日志记录,可以帮助排查问题和调试。 通过以上知识的学习和实践,你可以逐步构建一个功能完善的网络机器人。"网络机器人Java编程指南"这本书作为入门资料,...

    xml编程从入门到精通

    学习XML编程还需要了解如何在各种编程语言中处理XML,例如Java的JAXB、DOM4J,Python的ElementTree,C#的XmlDocument等。理解XML的基础知识后,可以深入研究XML的高级特性,如XPath和XSLT的复杂用法,以及如何在实际...

    chm资料集锦

    10. `dom4j.chm`:DOM4J是一个Java XML API,提供了强大的XML处理功能。 通过这些CHM文件,读者可以深入学习和理解上述技术,无论是Web前端的样式和交互,还是后端的框架与数据库操作,都能得到详尽的指导。对于...

    XML.rar(里面两本书:XML编程从入门到精通.pdf--xml_基础学习完全手册.chm)都是【高清晰】

    9. **DOM和JDOM**:在Java编程中,DOM4J和JDOM是常用的XML处理库,它们提供了操作XML文档的API,简化了XML的解析和生成。 10. **XML与数据库**:XML也可以作为数据库中的数据格式,如XML数据库,提供了一种非结构化...

    OFBIZ2.0 入门手册,适合刚学习的朋友们

    【OFBIZ 2.0 入门指南】 OFBIZ是一个开源的电子商务软件系统,它基于Java技术栈,利用诸如Tomcat、Ant、BeanShell和Jboss等优秀开源项目构建了一个强大的商务应用平台。OFBIZ的核心组件是Entity Engine,它提供了...

    jbpm开发指南

    jBPM依赖于Hibernate、dom4j等第三方库进行持久化,Hibernate不仅提供了对象关系映射,还处理了SQL方言问题,确保在各种数据库上都能运行。 1.5 jBPM控制台Web应用程序 jBPM控制台是一个Web应用程序,它提供了与...

Global site tag (gtag.js) - Google Analytics