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;

  • 相关阅读:
    「CF1027」
    「CF1000G Two-Paths」
    「CF1009」
    「CF1008」
    Vi的按键(常用)
    【codeforces】Codeforces Round #643 (Div. 2)
    【codeforces】Codeforces Round #641 (Div. 2)
    【codeforces】 Codeforces Round #640 (Div. 4)
    【codeforces】Codeforces Round #642 (Div. 3)
    【codeforces】CF1345C Hilbert's Hotel
  • 原文地址:https://www.cnblogs.com/guokai870510826/p/5983512.html
Copyright © 2011-2022 走看看