2013-09-23 146 views
1

我使用org.apache.commons.configuration.XMLConfiguration来读取我的Java代码中的XML配置文件。我的XML格式如下:Apache Commons XMLConfiguration-如何通过属性名称获取对象?

<items> 
    <item name = "cherry"> 
     <colour >red</colour > 
    </item> 

    <item name = "apple"> 
     <colour >green</colour > 
    </item> 
</items> 

我想获得一个名为'cherry'itemcolour值。 我试过这个:

config.getString("items.item[@name=cherry].colour"); 

但它不起作用,有什么建议吗?

+0

什么config.getString( “items.item [@name = /” 樱花/ “]色。”); –

回答

1

从代码Thrill weblog,我发现我需要config.setExpressionEngine(new XPathExpressionEngine());

这需要commons-jxpath库设置表达式引擎XPath

然后我可以使用XPath这样得到的结果:

config.getString("items/item[@name='cherry']/colour"); 
+1

它是config.getString(“items/item [name ='cherry']/color”),你可以在Thrill博客链接中找到相同的内容。 – Swamy