JavaWeb笔记-06-dom4j解析操作xml 实现对节点的增删改查

1、使用dom4j 解析xml

准备工作:
    1)导入dom4j提供的jar包   // 因为 dom4j 不是javase的一部分,所以需要先导包
        a.创建文件夹lib
        b.复制jar包到lib中
        c.右键dom4j -> 构建路径 -> 添加到构建路径
        d.成功后dom4j前图标变为小奶瓶

知识点:
    得到document文档
        SAXReader saxReader = new SAXReader();
        Document document = SAXReader.read(url);

    方法:
        document.getRootElemnet(); 获取根节点
        Node.getParent(); 获取父节点。
        element.addElement() ;添加标签 

        element(qname); 获取标签下的第一个子标签
        elements(qname);获取标签下的一层子标签
        elements(); 获取调用者的所有子标签

作为dom tree ,从上到下 一行一行解析

2、使用dom4j查询xml

(1)查询所有name元素里面的值

步骤:
    1)创建解析器  //SAXReader saxReader = new SAXReader();

    2)得到document  //Document document = saxReader.read("src/dom4j/p1.xml");

    3)得到根节点  // Element root = document.getRootElement();

    4)得到所有的p1标签     
            //List<Element> list = root.elements();
            //遍历集合  for (Element element : list) 

    5)得到name  //Element name1 = element.element("name");

    6)得到name的值  //name1.getText();
private static void selectName() throws Exception {
        // TODO Auto-generated method stub
        // 1)创建解析器
        SAXReader saxReader = new SAXReader();

        // 2)得到document
        Document document = saxReader.read("src/dom4j/p1.xml");

        // 3)得到根节点
        Element root = document.getRootElement();

        // 4)得到所有的p1标签
        List<Element> list = root.elements();
        // element(qname); 获取标签下的第一个子标签
        // elements(qname);获取标签下的一层子标签
        // elements(); 获取调用者的所有子标签

        for (Element element : list) {
            // 5)得到name
            Element name1 = element.element("name");
            // 6)得到name的值
            String s = name1.getText();
            System.out.println(s);
        }   
    }
}

(2)获取第一个name的值

    在(1)的基础上

     修改 4)为 得到第一个p1 //Element p1 = root.element("p1");

(3)得到第二个name的值

    在(1)的基础上 

    在 4) 中添加语句  Element p1 = list.get(1);   //根据集合下标获取第二个p1

3、使用dom4j实现添加操作

在第一

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值