要从xPath列表中获取节点名称,您可以使用Apache Freemarker的XPath功能。以下是一个示例解决方案:
<#assign xmlData = '''
Value 1
Value 2
'''>
<#assign xPathList = ["root/node1/subnode1", "root/node2/subnode2"]>
<#list xPathList as xPath>
<#assign node = xmlData?xml.xpath(xPath)>
<#if node?has_content>
Node name: ${node?node_name}
#if>
#list>
在这个示例中,我们首先定义了一个XML字符串xmlData
和一个包含xPath的列表xPathList
。
然后,我们使用xmlData?xml.xpath(xPath)
来执行XPath表达式,并将结果赋给名为node
的变量。
接下来,我们使用node?node_name
来获取节点的名称,并将其输出到控制台。
最后,我们使用<#if>
条件语句来检查节点是否存在,只有当节点存在时才输出节点名称。
运行上述Freemarker代码将输出以下结果:
Node name: subnode1
Node name: subnode2
这表示我们成功从xPath列表中获取了节点名称。