DOM4J_Xpath
DOM4J_Xpath
HoneyHoney 发表于2年前
DOM4J_Xpath
  • 发表于 2年前
  • 阅读 3
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云实验室 1小时搭建人工智能应用,让技术更容易入门 免费体验 >>>   

摘要: XPath 是一门在 XML 文档中查找信息的语言。 XPath 用于在 XML 文档中通过元素和属性进行导航。
  • 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());
 }


共有 人打赏支持
粉丝 0
博文 21
码字总数 6313
×
HoneyHoney
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: