我正在使用带有 XPATH 表达式引擎的 apache commons 配置 XMLConfiguration 对象来查询 XML 文件。我是 xpath 和 apache commons 的新手,语法有问题。
xml 文件如下所示:
<attrs>
<attr name="my_name" val="the_val"/>
<attr name="my_name2" val="the_val2"/>
</attrs>
我想要做的基本上是使用 commons 循环遍历所有属性并在每一行读取 name 和 val。我可以解决所有问题的唯一方法是使用 name 的值再次查询 xml。这种感觉对我来说是错误的,有没有更好的方法呢?
List<String> names = config.getList("attrs/attr/@name");
for( String name : names )
{
String val = config.getString("attrs/attr[@name='" +name +"']/@val" );
System.out.println("name:" +name +" VAL:" +val);
}
也转换为字符串,我不确定处理它的正确方法。