DOM4J 问题,以下是XML文件 ,我在读取XML文件的时候,不能将两个配置都读取出来,不知道大家有没办法public class HandleXml { private static URL url = Thread.currentThread().getContextClassLoader().getResource("");

private static Element root;

private static List<RegService> regList = new ArrayList<RegService>();

private static RegService regService;

/**
 * 
 * 返回一个root
 * @return
 */

public static Element getRootElement(){

SAXReader saxReader = new SAXReader();
Document document;

try {

document = saxReader.read(new File("src/properties.xml"));

root = document.getRootElement();

return root;

} catch (DocumentException e) {
e.printStackTrace();
return null;
}

}

/**
 * 
 * 遍历子节点的结构
 * @param root
 * @return
 */
public static List<RegService> getElementList(Element root){

List elements = root.elements();
int count = 1;

if(elements.size() != 0){

regService = new RegService();
for(Iterator it = elements.iterator();it.hasNext();){
Element elem = (Element)it.next();
getElementList(elem);

String ServiceName = getElementValue(elem, "ServiceName");
String Driver = getElementValue(elem, "Driver");
String Url = getElementValue(elem, "Url");
String UserName = getElementValue(elem, "UserName");
String Password = getElementValue(elem, "Password");

if(ServiceName != null){
regService.setServiceName(getElementValue(elem, "ServiceName"));
}
if(Driver != null){
regService.setDriver(getElementValue(elem, "Driver"));
}
if(Url != null){
regService.setUrl(getElementValue(elem, "Url"));
}
if(UserName != null){
regService.setUserName(getElementValue(elem, "UserName"));
}
if(Password != null){
regService.setPassword(getElementValue(elem, "Password"));
}

if(elem.getName().equals("configure")){
count++;
if(count%2 == 0){
regList.add(regService);

}
regService = new RegService();
}
}

}
return regList;

}

public static String getElementValue(Element elem,String title){

String flag = elem.getName();

if(flag.equals(title)){
return elem.getData().toString();
}else{
return null;
}

}


/**
 * 
 * 根据BaseType查询,相关数据库配置信息
 * 
 */

public static void main(String args[]){

root = getRootElement();
List<RegService> regList = getElementList(root);

for(RegService regService : regList){
System.out.println(regService.getDriver());
System.out.println(regService.getPassword());
System.out.println(regService.getServiceName());
System.out.println(regService.getUserName());
}

}

}//=====以下是XML文件 ,我在读取XML文件的时候,不能将两个配置都读取出来,不知道大家有没办法<?xml version="1.0" encoding="UTF-8"?>
<service>
<configure BaseType="Mysql">
<ServiceName>test</ServiceName>
<Driver>com.mysql.jdbc.Driver</Driver>
<Url>jdbc:mysql://localhost:3306/test</Url>
<UserName>root</UserName>
<Password>sa</Password>
</configure>
<configure BaseType="Mysql">
<ServiceName>test</ServiceName>
<Driver>com.mysql.jdbc.Driver</Driver>
<Url>jdbc:mysql://localhost:3306/test</Url>
<UserName>root</UserName>
<Password>sa</Password>
</configure>
</service>