此版本仍在开发中,尚不被认为是稳定的。对于最新的稳定版本,请使用 Spring Integration 6.5.1spring-doc.cadn.net.cn

#xpath SpEL 功能

Spring Integration 从 3.0 版开始,提供了内置的#xpathSpEL 函数,该函数调用XPathUtils.evaluate(…​)static 方法。此方法委托给org.springframework.xml.xpath.XPathExpression. 以下列表显示了一些用法示例:spring-doc.cadn.net.cn

<transformer expression="#xpath(payload, '/name')"/>

<filter expression="#xpath(payload, headers.xpath, 'boolean')"/>

<splitter expression="#xpath(payload, '//book', 'document_list')"/>

<router expression="#xpath(payload, '/person/@age', 'number')">
    <mapping channel="output1" value="16"/>
    <mapping channel="output2" value="45"/>
</router>

#xpath()还支持用于转换 XPath 评估结果的第三个可选参数。它可以是 String 常量 (string,boolean,number,node,node_listdocument_list) 或org.springframework.xml.xpath.NodeMapper实例。 默认情况下,#xpathSpEL 函数返回一个StringXPath 评估的表示形式。spring-doc.cadn.net.cn

要启用#xpathSpEL 函数,您可以添加spring-integration-xml.jar到类路径。您无需声明 Spring Integration XML 命名空间中的任何组件。

有关详细信息,请参阅“'Spring 表达式语言 (SpEL)”。spring-doc.cadn.net.cn