1、這是我定義的xml,test.xml
<PathDefines>
<PathDefine name="***" paperType="P">
<printType name="test1" url="/paper-print.jsp" printModeId="1"></printType>
<printType name="test2" url="/paper-print0.jsp" printModeId="2"></printType>
</PathDefine>
</PathDefines>
2、為了擷取xml中的url,寫的類如下:
public class Test{
public Test(){
}
/**
* 根據傳入的參數,找到對應的url並返回
* @param paperType單據類型
* @param parameterId 列印型別參數
* return 返回當前路徑
*/
public String getPageUrl(String paperType,String printModeId){
try{
ClassLoader cl=Thread.currentThread().getContextClassLoader();
SAXReader reader=new SAXReader();
Document document=reader.read(cl.getResourceAsStream("test.xml"));
Iterator iter=document.selectNodes("/PathDefines/PathDefine[@paperType='"+paperType+"']/printType[@printModeId='"+printModeId+"']").iterator();
String result="";
if (iter.hasNext())
result=((Element)iter.next()).attributeValue("url");
return result;
}catch(Exception e){
System.out.println(e);
e.printStackTrace();
return "";
}
public static void main(String[] args){
PrintPath printPath=new PrintPath();
String url=printPath.getPageUrl("P", "1");
System.out.println(url);
}
}