文档章节

DOM4J_Xpath

H
 HoneyHoney
发布于 2015/06/15 14:34
字数 246
阅读 18
收藏 0
  • XPath 使用路径表达式在 XML 文档中进行导航

  • XPath 包含一个标准函数库

  • XPath 是 XSLT 中的主要元素

  • XPath 是一个 W3C 标准 

第一步:导入xpath的支持包

第二步:使用xpath 

   1:定义xpath = "//name"

   2:查询 dom.selectNodes(xpath);

public class Demo03_Xpath {
 @Test
 public void test1() throws Exception {
  SAXReader sax = new SAXReader();
  Document dom = sax.read("./files/users.xml");
  String xpath = "//name";
  List<Element> list = dom.selectNodes(xpath);
  for(Element e:list){
   System.err.println(e.getText());
  }
 }
}

用xpath实现登录:

 @Test
 public void test2() throws Exception {
  SAXReader sax = new SAXReader();
  Document dom = sax.read("./files/users.xml");
  String xpath = "//user[name='张三'][pwd='22225666']";
  Element e = (Element) dom.selectSingleNode(xpath);
  System.err.println(e);
 }

模糊查询:

 @Test
 public void test3() throws Exception {
  SAXReader sax = new SAXReader();
  Document dom = sax.read("./files/users.xml");
  String xpath = "//user[contains(name,'赵')][contains(age,'3')]";
  List<Element> list = dom.selectNodes(xpath);
  for(Element e:list){
   System.err.println(e.asXML());
   System.err.println("-----------------------");
  }
 }

根据id查询:

 @Test
 public void test4() throws Exception {
  SAXReader sax = new SAXReader();
  Document dom = sax.read("./files/users.xml");
  String xpath = "//user[@id='U001']";
  Element e = (Element) dom.selectSingleNode(xpath);
  System.err.println(e.asXML());
 }


© 著作权归作者所有

共有 人打赏支持
H
粉丝 0
博文 21
码字总数 6313
作品 0
济南
Android 创建与解析XML(五)—— Dom4j方式

1、Dom4j概述 dom4j is an easy to use, open source library for working with XML, XPath and XSLT on the Java platform using the Java Collections Framework and with full support fo......

长平狐
2013/01/06
91
0
DOM4J解析XML

Dom4j是一个易用的、开源的库,用于XML,XPath和XSLT。它应用于Java平台,采用了Java集合框架并完全支持DOM,SAX和JAXP。很多Java软件读写XML都在使用dom4j,Sun公司的JAXM也是用dom4j。Hib...

iborder
2016/10/18
42
0
day08 Xml与Tomcat

DTD约束demo bookstore1.xml <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE bookstore [ <!ELEMENT bookstore (book+)> <!ELEMENT book (title,author,year,price)> <!ELEMENT title (#......

萧小蚁
2016/03/09
50
0
Dom4j的使用(全而好的文章)

Dom4j 使用简介 作者:冰云 icecloud(AT)sina.com 时间:2003.12.15 DOM4J是dom4j.org出品的一个开源XML解析包,它的网站中这样定义: Dom4j is an easy to use, open source library for w...

倚小丁
2010/11/02
0
0
dom4j 2.0.1 发布,XML 操作库

dom4j 2.0.1 已发布,该版本主要是修复了 bug,详细如下: 修复 QName 序列化 (#17) DocumentException 初始化出现 nested exception (#20) 多线程测试中意外发生的错误 (#14) 下载地址 dom4...

淡漠悠然
2017/07/06
1K
22

没有更多内容

加载失败,请刷新页面

加载更多

下一页

高三暑假我是怎么想开去学linux系统的

高三的时候,我有一句口头禅:“老了老了,现在做题越来越迟钝了”。当时整天日夜苦读,体重日益增加,脸色越来越黯淡,我在终于熬过了高考的时候,简直心里面乐得开了花。我终于可以去做自己...

linuxprobe16
8分钟前
0
0
Python 获得命令行参数的方法

需要模块:sys 参数个数:len(sys.argv) 脚本名: sys.argv[0] 参数1: sys.argv[1] 参数2: sys.argv[2]

编程老陆
15分钟前
0
0
链队

队列用链表来表示时,需要用两个变量来记录队列两端的变化:theFront,theBack. 根据链接方向的不同,链队有两种链接方式(其实就是链表的头插入节点和尾插入节点,头删除节点和尾删除节点)。...

Frost729
18分钟前
0
0
IDEA toString() json模板

public java.lang.String toString() {java.lang.StringBuilder builder = new java.lang.StringBuilder();#set ($i = 0)#foreach ($member in $members)#if ($i == 0)builder.appen......

Mtok
28分钟前
0
0
Dubbo内核实现之SPI简单介绍

Dubbo采用微内核+插件体系,使得设计优雅,扩展性强。那所谓的微内核+插件体系是如何实现的呢!即我们定义了服务接口标准,让厂商去实现(如果不了解spi的请谷歌百度下), jdk通过ServiceLo...

明理萝
33分钟前
0
1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部