Java使用Jdom读取xml解析实例
本文实例讲述了Java使用Jdom读取xml解析。分享给大家供大家参考,具体如下:
packagecom.yanek.demo.xml.test;
importjava.io.File;
importjava.io.IOException;
importjava.util.Iterator;
importjava.util.List;
importorg.jdom.Document;
importorg.jdom.Element;
importorg.jdom.JDOMException;
importorg.jdom.input.SAXBuilder;
publicclassJdomReadXml{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
/**
*<?xmlversion="1.0"encoding="UTF-8"?><actionsm="001"><action
*path="/test"class="com.mystruts.demo.LoginAction"><forward
*name="success"url="test.jsp"/><forwardname="failure"
*url="failure.jsp"/></action><actionpath="/user"
*class="com.mystruts.demo.UserAction"><forwardname="success"
*url="test.jsp"/><forwardname="failure"url="failure.jsp"/></action></actions>
*/
SAXBuildersax=newSAXBuilder();
Documentdoc;
try{
try{
doc=sax.build(newFile("mystruts.xml"));
Elementroot=doc.getRootElement();
Listactions=root.getChildren();
//遍历获取根节点下的一级子节点,并作为入参传入递归方法
for(Iteratori=actions.iterator();i.hasNext();){
Elementaction=(Element)i.next();
System.out.println(action.getAttributeValue("path"));
System.out.println(action.getAttributeValue("class"));
Listforwards=action.getChildren();
for(Iteratorj=forwards.iterator();j.hasNext();){
Elementforward=(Element)j.next();
System.out.println(forward.getAttributeValue("name"));
System.out.println(forward.getAttributeValue("url"));
}
}
}catch(IOExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}catch(JDOMExceptione){
e.printStackTrace();
}
}
}
输出:
/test com.mystruts.demo.LoginAction success test.jsp failure failure.jsp /user com.mystruts.demo.UserAction success test.jsp failure failure.jsp
希望本文所述对大家Java程序设计有所帮助。