在pom.xml中引入dom4j.jar包:

<!-- 使用log4j记录服务器日志 -->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.8.2</version>
        </dependency>

 

主要的操作步骤:

读:将文件读入程序
    1.1创建文件对象
File f=new File("d:\\student.xml");
1.2把文件对象 变为xml文件对象
SAXReader sreader=new SAXReader();
try {
Document doc=sreader.read(f);
2.找到文档对象的根节点
Element root=doc.getRootElement();
3.找到根节点下的 Student子节点
List<Element> stus=root.elements("Student");
4.循环遍历 访问每个 Student节点下的属性节点
Student stu;
for (Element el : stus) 
            stu=new Student();
            stu.setStuId(el.elementText("stuId"));
            stu.setStuName(el.element("stuName").getText());
            stu.setStuAge(Integer.parseInt(el.elementText("stuAge")));
            this.stus.add(stu);
写:将程序内容写入文件
1.创建文档对象 如果路径和某个文件路径相同 则覆盖
        Document doc=DocumentHelper.createDocument();
    2.为文档对象创建根节点  保存该节点 便于后续操作
        Element root=doc.addElement("Students");//根节点的名字叫 Students
    3.循环集合中的对象 每个对象应该对应一个Students的子节点
        for (Student st : stus) {
            Element stu=root.addElement("Student");
            stu.addElement("stuId").setText(st.getStuId());
            stu.addElement("stuName").setText(st.getStuName());
            stu.addElement("stuAge").setText(st.getStuAge()+"");
        }
        上面的步骤可以保证xml文档的节点结构  以及数据来源 带还没有真正的存入文件
    4.将整个操作存入文件中,要创建文档的写入对象,需要准备 1.输出流 2.调整格式 
        try {
      FileOutputStream outStream=new FileOutputStream("d:\\student.xml");
            OutputFormat fom=OutputFormat.createPrettyPrint();
XMLWriter writer=new XMLWriter(outStream,fom);
writer.write(doc); writer.close(); outStream.close();