为了以后方便查看,话不多说,直接上代码了
package com.yzj.sisbase.webservice.test;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
public class TestXml {
public static void main(String[] args){
String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><root><BatchBean MODEL_CODE=\"YYXT_BATCH\" IS_UNITED_ACCESS=\"false\" IS_SUNECM_COSOLE=\"false\" IS_BREAK_POINT=\"false\" IS_DOWNLOAD=\"false\"> <index_Object CONTENT_STATUS=\"1\" SERVER_ID=\"1\" UPLOAD_USER=\"yyxt\" CONTENT_ID=\"20191207_2_55_299E2F85-04EE-1082-249A-1CC6E8FDD349-1\" MIGRATION_STATUS=\"1\" UPLOAD_TIME=\"20191207012311\" VERSION=\"1\" MAX_VERSION=\"1\" GROUP_ID=\"1\" GROUP_NAME=\"影像服务器组\"> <customMap> <CREATEDATE><string>20181121</string></CREATEDATE> <UPDATE_TIME><string>20191207012311</string></UPDATE_TIME> <BUSI_SERIAL_NO><string>20181121111131</string></BUSI_SERIAL_NO> </customMap> </index_Object> <document_Objects> <BatchFileBean FILE_PART_NAME=\"YYXT_IMAGE\"> <files> <FileBean VERSION=\"1\" UPLOAD_TIME=\"20191207012311\" FILE_FORMAT=\"jpg\" FILE_NO=\"D899DD39-6263-B31A-22C7-97F71F6BBA97\" SAVE_NAME=\"D899DD39-6263-B31A-22C7-97F71F6BBA97\" CONTENT_ID=\"20191207_2_55_299E2F85-04EE-1082-249A-1CC6E8FDD349-1\" FILE_STATUS=\"1\" OPTION_TYPE=\"1\" FILE_SIZE=\"4090\" SERVER_ID=\"1\" GROUP_ID=\"1\" URL=\"http://10.10.36.24:9084/SunECMDM/servlet/getFile?s/lV3bcibQjUge2CCtrHE8h3F/Jh74A+h7uXhnCE/Rgl1L/n1y4dUCaamwl4hhW0SiHj9PmfdpHi3a7u18wax/5Ikf318cfaoaJILDOOce3EMWtoqSc13coytcyShC1un63oo3HFuFUL0Xg6DblBtO+tBQNlv7QFEA5oHeLLivl15WxLB2kQoTZc0CrDMtlwcADOltNnS07MFIZ1sjTUeqJkNc3lsdI2QtES5KzdrEgEMoNKvCha0WHpppnnXylhQTgJARmo7MhZ94gPh4PQpdOoxIHL7X+1d+VgJEd+449s8Kp1H5VphLHxifYHN8C14731y0whl6tH/L6WNUQrBQ5dm/MZe0lI7jAAnS6Rq/wVEFR2di7E7iTVj6woDojJUd9IKJZGsAc=\"> <otherAtt> <UPDATE_TIME><string>20191207012311</string></UPDATE_TIME> <FILEFACE><string>1</string></FILEFACE> </otherAtt> </FileBean> </files> </BatchFileBean> </document_Objects></BatchBean></root>";
Document document;
try {
document = DocumentHelper.parseText(xml);
Element root=document.getRootElement();
System.out.println(root.getName());
List<Element> elementList=root.elements("BatchBean"); //获得根元素下所有指定的子节点
Element element = elementList.get(0);
System.out.println(element.getName());
//.element("<BatchFileBean ").element("files").element("<FileBean");
//element不支持一次写多个,比如上面那样,只能一个个得到
Element docObj=element.element("document_Objects");
Element docObj2=docObj.element("BatchFileBean");
Element docObj3=docObj2.element("files");
Element docObj4=docObj3.element("FileBean");
//Element docObj5=docObj4.element("BatchFileBean");
System.out.println(docObj4.getName());
String url = docObj4.attributeValue("URL");//获取子节点属性的值
System.out.println("URL>>>"+url);
//elementTextTrim 获取节点的值
/*System.out.println(element.elementTextTrim("writeuser"));
System.out.println(element.elementTextTrim("title"));
System.out.println(element.elementTextTrim("issstatus"));
System.out.println(element.elementTextTrim("newsid"));*/
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
运行的结果