创建一个XML: package com.jdom; import java.io.FileWriter; import org.jdom.Comment; import org.jdom.Document; import org.jdom.Element; import org.jdom.output.Format; import org.jdom.output.XMLOutputter; public class JdomCreateXml { public static void main(String[] args)throws Exception { Element root = new Element("person"); root.setAttribute("id", "01"); Comment comment = new Comment("this is test JDOM producing xml file"); root.addContent(comment); Element student1 = new Element("student").setAttribute("sId", "0101"); Element name1 = new Element("name"); name1.addContent("zhangsan"); Element age1 = new Element("age"); age1.addContent("20"); Element sex1 = new Element("sex"); sex1.addContent("male"); student1.addContent(name1); student1.addContent(age1); student1.addContent(sex1); Element student2 = new Element("student").setAttribute("sId", "0102"); Element name2 = new Element("name"); name2.addContent("lisi"); Element age2 = new Element("age"); age2.addContent("21"); Element sex2 = new Element("sex"); sex2.addContent("male"); student2.addContent(name2); student2.addContent(age2); student2.addContent(sex2); Element student3 = new Element("student").setAttribute("sId", "0103"); Element name3 = new Element("name"); name3.addContent("wangwu"); Element age3 = new Element("age"); age3.addContent("22"); Element sex3 = new Element("sex"); sex3.addContent("female"); student3.addContent(name3); student3.addContent(age3); student3.addContent(sex3); root.addContent(student1); root.addContent(student2); root.addContent(student3); Document document = new Document(root); Format format = Format.getPrettyFormat(); format.getExpandEmptyElements(); format.setEncoding("UTF-8"); XMLOutputter out = new XMLOutputter(format); out.output(document, new FileWriter("src/com/jdom/person.xml")); } } 解析XML: package com.jdom; import java.io.File; import java.util.List; import org.jdom.Document; import org.jdom.Element; import org.jdom.input.SAXBuilder; public class JdomReadXml { /** * @param args */ public static void main(String[] args)throws Exception { SAXBuilder sax = new SAXBuilder(); Document document = sax.build(new File("src/com/jdom/person.xml")); Element root = document.getRootElement(); System.out.println("<"+root.getName()+ " id="+ root.getAttributeValue("id") + " >"); List<Element> listStudent = root.getChildren(); for(Element student: listStudent){ System.out.println(" <"+student.getName()+">"); List<Element> listChid = student.getChildren(); for(Element chid: listChid){ System.out.print(" <"+chid.getName()+">"); System.out.print(chid.getValue()); System.out.println("</"+chid.getName()+">"); } System.out.println(" </"+student.getName()+">"); } System.out.println("</"+root.getName()+">"); } } XML: <?xml version="1.0" encoding="UTF-8"?> <person id="01"> <!--this is test JDOM producing xml file--> <student sId="0101"> <name>zhangsan</name> <age>20</age> <sex>male</sex> </student> <student sId="0102"> <name>lisi</name> <age>21</age> <sex>male</sex> </student> <student sId="0103"> <name>wangwu</name> <age>22</age> <sex>female</sex> </student> </person>