zoukankan      html  css  js  c++  java
  • xml动态修改 dom4j修改

    xml的动态修改需要传入的参数

    xml的位置(tomcat中的发布位置)、修改后的xml需要保存的位置(因为动态修改,所以建议和xml未修改前的位置相同)、添加的节点的信息、或者修改的节点的信息

         SAXReader reader = new SAXReader();
            Document doc =  reader.read(new File(path));//path文件的路径
            Element root = doc.getRootElement();//获取根节点
            List childList = root.elements();//获取根节点下节点数目
            Element it = (Element)childList.get(1);//需要往这个节点下添加子节点,所以在这里拿到它
            Element dateElement = it.addElement("task:scheduled"); //创建一个节点,task:scheduled是节点名称,就像spring中的bean一样
            dateElement.addAttribute("ref", pd.getString("ref"));//一下的三句分别是给节点添加属性
            dateElement.addAttribute("method", pd.getString("method"));
            dateElement.addAttribute("cron", pd.getString("cron"));
            XMLWriter output;//创建输出流
            OutputFormat format = OutputFormat.createPrettyPrint();
            try {
                output = new XMLWriter(new FileWriter(path), format); //这里的path是修改后需要保存的路径,建议和未修改前位置一样
                output.write(doc);
                output.close();
            } catch (IOException e) {
                e.printStackTrace();
            }

    引入类的包路径

    import org.dom4j.Document;
    import org.dom4j.Element;
    import org.dom4j.io.OutputFormat;
    import org.dom4j.io.SAXReader;
    import org.dom4j.io.XMLWriter;

  • 相关阅读:
    洛谷 P3366 【模板】最小生成树
    洛谷 P2820 局域网
    一本通【例4-10】最优布线问题
    洛谷 P1546 最短网络 Agri-Net
    图论模板
    洛谷 AT667 【天下一人力比較】
    刷题记录
    洛谷P1553 数字翻转(升级版)
    tornado硬件管理系统-网络与磁盘的实现(7)
    tornado硬件管理系统-内存与swap的实现(6)
  • 原文地址:https://www.cnblogs.com/guokai870510826/p/5983512.html
Copyright © 2011-2022 走看看