直接获取某个元素的方式:
①第一种形式:/AAA/BBB/CCC
指的是:’/’ 表示一层层,指的是AAA下的BBB下的CCC,即第三层。
②第二种形式://BBB
指的是:所有的BBB元素,不论BBB在哪一层,只要和名称相同。
③第三种形式:/AAA/BBB/CCC/*
指的是:选择所有路径依附于/AAA/BBB/CCC的元素。
④第四种形式://*
指的是:所有元素。
⑤第五种形式:/AAA/BBB[1]
指的是:选择AAA的第一个BBB子元素。
⑥第六种形式:
//@id
指的是:选择所有id属性。 < BBB id=“b1”/> < BBB id=“b2”/>
//BBB[@id]:选择有id属性的BBB元素。
⑦第七种形式:
//BBB[@id=‘b1’]:选择含有属性id且其值为‘b1’的BBB元素。
默认情况下dom4j不支持xpath。如果想要在dom4j里有xpath,第一步需要引入支持xpath的jar包,使用jaxen-1.1-beta-6.jar,把jar包导入到项目中。
在dom4j里提供看两个方法,用来支持xpath:
方法一:SelectNodes(“xpath表达式”):获取多个节点。
方法二:SelectSingleNode(“xpath表达式”):获取一个节点。
例如:使用xpath实现查询xml中所有name元素的值。
所有name元素的xpath表示://name
使用 SelectNodes("//name")