class="java" name="code"> import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.util.Iterator; import java.util.List; import org.jdom2.Document; import org.jdom2.Element; import org.jdom2.JDOMException; import org.jdom2.input.SAXBuilder; import org.jdom2.output.XMLOutputter; import com.ailk.xmlparserdemon.intf.XmlDocument; public class JdomXmlDemon implements XmlDocument { static String filename; public void createDocument(String fileName) { System.out.println("jdom create begin..."); Document dc; Element root; root=new Element("employees"); dc=new Document(root); Element employee=new Element("employee"); root.addContent(employee); Element name=new Element("name"); name.setText("小明"); employee.addContent(name); Element sex=new Element("sex"); sex.setText("m"); employee.addContent(sex); Element parents=new Element("parents"); employee.addContent(parents); Element father=new Element("father"); father.setText("小张"); parents.addContent(father); Element mother=new Element("mother"); mother.setText("小慧"); parents.addContent(mother); try { XMLOutputter out=new XMLOutputter(); out.output(dc, new FileOutputStream(fileName)); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("jdom create end..."); } public void parserDocument(String fileName) { System.out.println("jdom parser begin..."); try { SAXBuilder build=new SAXBuilder(false); Document dt= build.build(fileName); Element employees=dt.getRootElement(); List employee=employees.getChildren("employee"); for(int i=0;i<employee.size();i++){ Element elements=(Element)employee.get(i); List employinfo=elements.getChildren(); for(int j=0;j<employinfo.size();j++){ Element employinfonode=(Element)employinfo.get(j); for(Iterator info=employinfonode.getChildren().iterator();info.hasNext();){ Element node=(Element) info.next(); System.out.println(node.getName()+":"+node.getValue()); } if(!employinfonode.getChildren().iterator().hasNext()){ System.out.println(((Element)employinfo.get(j)).getName()+":"+((Element)employinfo.get(j)).getValue()); } } } } catch (JDOMException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("jdom parser end..."); } public static void main(String[] args){ JdomXmlDemon jdom=new JdomXmlDemon(); JdomXmlDemon.filename="E:\\OneNote\\jdom.xml"; jdom.createDocument(filename); jdom.parserDocument(filename); } }