- 浏览: 307986 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (118)
- VS2008 (2)
- JAVA (34)
- AJAX (1)
- C# (1)
- Flex (16)
- FMS (6)
- SQLSERVER (1)
- ORACLE (1)
- Quartz (1)
- struts2 (1)
- java数据结构 (1)
- java设计模式 (3)
- JSF (0)
- web (2)
- jbpm4 (4)
- J2EE (1)
- webservice (2)
- javascript (8)
- spring (3)
- lucene (0)
- linux (9)
- ibatis (1)
- JPA (2)
- 外挂 (0)
- VB (0)
- Hibernate (1)
- OSGI (8)
- EXT (4)
- Maven (1)
- SpringSecurity (0)
- activiti (0)
- 项目开发 (0)
- 项目管理 (7)
- android (0)
- FFMPEG (1)
- C (2)
- eclipse (1)
最新评论
-
默默得守候在你的身边:
给力
java与Delphi写的dll交互 -
默默得守候在你的身边:
java与Delphi写的dll交互 -
fuguitong:
[url][url][url][url][url][url][ ...
doc转swf -
baidu_25402161:
到结束的时候一直 Can't delete processIn ...
一个请假单流程的实现(struts2.1.8+spring2.5+hibernate3集成jbpm4.3) -
lohaoo1:
nice!
java面包屑导航制作
所需jar包:
dom4j.jar
jaxen.jar
xml测试页面:
<?xml version="1.0" encoding="ISO-8859-1"?> <bookstore desc="book set"> book1 <book category="COOKING"> <title lang="en">Everyday Italian</title> <author>Giada De Laurentiis</author> <year>2005</year> <price>30.00</price> </book> book2 <book category="CHILDREN"> <title lang="en">Harry Potter</title> <author>J K. Rowling</author> <year>2005</year> <price>29.99</price> </book> book3 <book category="WEB"> <title lang="en">XQuery Kick Start</title> <author>James McGovern</author> <author>Per Bothner</author> <author>Kurt Cagle</author> <author>James Linn</author> <author>Vaidyanathan Nagarajan</author> <year>2003</year> <price>49.99</price> </book> book4 <book category="WEB"> <title lang="en">Learning XML</title> <author>Erik T. Ray</author> <year>2003</year> <price>39.95</price> </book> book5 <book category="JSP"> <title lang="hx">Learning JSP</title> <author>Erik T. Ray</author> <year>2006</year> <price>22</price> </book> </bookstore>
java测试代码:
SAXReader reader = new SAXReader(); InputStream inputStream = BooksXml.class.getClassLoader().getResourceAsStream("books.xml"); Document doc = reader.read(inputStream); //可以先创建xpath表达式 XPath xPath = doc.createXPath("/bookstore/book"); List<?> list; //也可以直接使用 list = doc.selectNodes("/bookstore/book");//获取bookstore下面的所有book元素的集合 list = xPath.selectNodes(doc.getRootElement());//在指定的节点下面找寻满足条件的集合 list = doc.selectNodes("/bookstore/book/author/text()");//获取作者名字集合 list = doc.selectNodes("/bookstore/book[price>35]/price");//获取价格大于35的书的价格集合 list = doc.selectNodes("/bookstore/book[price>35]/title");//获取价格大于35的书的标题集合 list = doc.selectNodes("/bookstore/book[1]");//获取第一本书 list = doc.selectNodes("/bookstore/book[last()]");//获取最后一本书 list = doc.selectNodes("//title[@lang]");//获取书标题中有lang属性的标题集合 list = doc.selectNodes("//title[@lang='en']");//获取属性lang值等于en的标题集合 list = doc.selectNodes("/bookstore/book/title | //price");//获取书的标题集合和价格集合 list = doc.selectNodes("/bookstore/book[position()<3]");//获取前两本书 list = doc.selectNodes("/bookstore/book/title");//获取所有的title集合 list = doc.selectNodes("/bookstore/book/title[@*]");//获取含有属性的title集合 Element root = doc.getRootElement(); list = root.selectNodes("child::book");//当前节点下面的所有book集合 list = root.selectNodes("child::*");//当前节点下面的所有子元素集合 list = root.selectNodes("child::node()");//获取当前节点下面的所有子元素集合 list = root.selectNodes("attribute::desc");//获取当前节点的desc属性 list = root.selectNodes("attribute::*");//获取当前节点的所有属性集合 list = root.selectNodes("child::text()");//获取当前节点的所有文本子节点集合 list = root.selectNodes("descendant::book");//获取root的后代元素book集合 list = doc.selectSingleNode("/bookstore/book[@category='JSP']") .selectNodes("descendant::title");//获取到具体的书后在获取title元素 list = doc.selectSingleNode("/bookstore/book[@category='JSP']") .selectNodes("ancestor-or-self::book"); list = root.selectNodes("child::*/child::price");//选取当前节点的所有 price 孙子集合
发表评论
-
OSGI学习
2012-03-18 18:01 0http://www.blogjava.net/zhenyu3 ... -
OSGI学习笔记(七)
2012-03-17 23:58 1693SpringDM初步使用(二) 介绍哈官方的第二个例子 ... -
ubuntu10.04下nexus和maven的安装及配置
2012-03-14 16:14 2510前提要有jdk环境,官方下载nexus和maven,解压后创建 ... -
ubuntu10.04下eclipse的安装及配置
2012-03-14 00:01 1307从官方http://www.eclipse.org/downl ... -
Ubuntu10.04下配置java环境变量
2012-03-13 23:28 1066Ubuntu10.04默认安装了OpenJDK,但还是基于Su ... -
eclipse设置保护色
2012-03-16 09:22 9414eclipse操作界面默认颜色为白色。对于我们长期使 ... -
OSGI学习笔记(六)
2012-03-17 15:08 2754SpringDM初步使用(一) 官方地址http:// ... -
OSGI学习笔记(八)
2012-03-19 21:08 2301SpringDM初步使用(三) spring第三个例子 ... -
OSGI学习笔记(五)
2011-07-31 10:32 1586开放服务网关协议 (Open Services Gateway ... -
osgi学习笔记(三)
2011-07-16 22:43 1961OSGI实战书上讲了一个web登陆验证切换功能。表达了osgi ... -
word工具类
2011-03-15 09:19 1444package org.foreverframework ... -
命令模式--撤销恢复
2011-03-14 22:32 4986该例子来自阎宏提供的 ... -
java zip
2011-03-06 15:32 1215import java.io.BufferedInputStr ... -
doc转swf
2010-12-07 22:03 8540将doc转换成swf,然后显示在html页面上。 packa ... -
javamail简单使用
2010-11-15 08:29 2350MailInfo类: //发送邮件的信息类 public ... -
xloadtree的一个改造
2010-09-20 22:58 2569修改了xloadtree的部分源码以适合自己使用。 1.修改 ... -
java与Delphi写的dll交互
2010-09-05 22:27 6162有时候在项目开发的时候难免会和硬件提供的开发包接触,这些开发接 ... -
JAVA与DLL交互
2010-08-27 23:32 1945jna官网地址:https://jna.dev.java.ne ... -
office工具类
2010-07-31 14:17 2310将jcom.dll放入jdk的bin目录下,将jcom.jar ... -
启动多个tomcat
2010-04-22 09:13 1216想启动多个tomcat,只需修改conf/server.xml ...
相关推荐
1. 支持XPath:DOM4J提供了一种强大的方式来查询XML文档,通过XPath表达式可以轻松地找到需要的数据。 2. 文档对象模型:它允许开发者以面向对象的方式处理XML文档,包括元素、属性、文本节点等。 3. 轻量级:DOM4J...
1. **灵活的文档构建**:DOM4J提供了多种方式来创建和修改XML文档,如通过元素、属性、文本节点等对象直接操作,或者使用XPath表达式定位。 2. **强大的查询能力**:DOM4J支持XPath,可以方便地通过路径表达式查找...
4. **XPath支持**:XPath是一种在XML文档中查找信息的语言,dom4j支持XPath 1.0规范,可以通过简单的表达式快速找到需要的节点。 5. **事件处理**:dom4j也支持事件处理模型,允许开发者在XML解析过程中响应特定的...
它能够与DOM4J、JDOM、XOM等多个XML API协同工作,让开发者能够在不同的XML环境中使用XPath表达式。Jaxen提供了API来评估XPath表达式,返回匹配的节点集,以及执行XPath函数和操作。 **Sitemesh-2.2.1.jar** ...
这里的"dom4j-2.1.0.jar"是DOM4J库的二进制版本,而"dom4j-2.1.0-javadoc.jar"则是该库的API文档,用于帮助开发者理解和使用DOM4J的各种接口和类。 DOM4J的核心功能包括: 1. **XML解析**:DOM4J支持多种解析方式...
四、DOM4J与其他XML库的比较 DOM4J与JDOM、XOM等其他XML处理库相比,其优势在于功能全面、性能优秀和广泛的社区支持。虽然Java标准库中的JAXB和DOM API提供了XML处理的基础功能,但DOM4J因其简洁的API和强大的功能...
DOM4J是基于DOM模型的,但相比Java内置的DOM API,DOM4J更轻量级且易于使用。它支持XPath查询,提供了丰富的事件处理机制,并且与JDOM和XOM等其他XML库有良好的互操作性。DOM4J的2.0.3版本修复了一些已知问题,提升...
在项目中使用DOM4J时,只需将相应的jar包(如dom4j-1.6.1.jar、dom4j-2.0.2.jar或dom4j-2.1.1.jar)导入到类路径中,即可开始利用其功能处理XML文档。导入后,可以按照DOM4J提供的API进行编程,快速实现XML的读写...
2. 数据操作:dom4j提供了XPath支持,可以方便地通过表达式定位XML节点,进行查询和修改。同时,它还支持XML与Java对象之间的映射,简化了数据操作。 3. 序列化:dom4j可以将XML文档对象序列化为字符串或写入文件,...
dom4j的设计目标是简单易用,同时又具有强大的功能,支持XPath查询、XML Schema验证、XML DOM和SAX等接口。在1.6.1版本中,dom4j进一步提升了性能和稳定性,是许多Java开发者在处理XML时的首选库。 **二、核心概念*...
下面将详细探讨DOM4J的主要特性、使用方法以及它如何优化XML处理。 1. **DOM4J的基本概念** - DOM4J的核心思想是提供一个灵活的、面向对象的模型来处理XML文档,包括元素、属性、文本节点等。 - 它不仅支持标准的...
将DOM4J和XPath结合使用,可以实现高效、准确的XML处理。DOM4J可以加载和解析XML文档,然后利用XPath表达式进行数据检索。这种方式避免了传统遍历DOM树的低效,尤其是在大型XML文档中,XPath的查询性能优势尤为明显...
5. **XPath和XSLT**: 虽然不如DOM4J直接支持XPath,但XMLBeans也提供了对XPath和XSLT的支持,不过需要额外的库。 在项目中,如果你遇到无法通过Maven正确引入这两个依赖的问题,可能的原因有: 1. **Maven配置错误...
1. **XML解析**:DOM4J可以使用SAX或DOM解析器读取XML文档,同时提供了一种流式处理XML数据的方式,降低了内存消耗。 2. **XPath支持**:DOM4J实现了XPath表达式,允许用户通过简洁的字符串表达式来查找XML文档中的...
例如,开发者可以先使用DOM4J解析XML文档,然后通过Jaxen执行XPath查询,找出需要的节点,再进行进一步的操作。这样的组合在处理复杂XML结构时,既提高了效率,又降低了代码的复杂性。 在实际项目中,这两个库经常...
7. **Spring框架集成**:DOM4J与Spring框架有紧密的联系,Spring使用DOM4J来解析和构建配置文件,如XML形式的bean定义。 8. **许可证信息**:压缩包中的"springframework-license.txt"可能包含了Spring框架相关的...
2. **强大的XPath支持**:DOM4J提供了对XPath(eXtensible Path Language)的强大支持,允许开发者通过表达式快速定位XML文档中的节点,大大简化了数据查找和操作的复杂度。 3. **XML文档的构建和修改**:DOM4J可以...
DOM4J是Java社区中广泛使用的XML处理库,它的全称是“Document Object Model for Java”,它为XML的解析、操作和处理提供了强大而灵活的支持。在本文中,我们将深入探讨DOM4J 2.1.0版本的核心特性、功能以及如何利用...