gpt4 book ai didi

java - Spring Integration - 如何使用 SpEL 过滤基于注释的消息?

转载 作者:太空宇宙 更新时间:2023-11-04 10:58:28 25 4
gpt4 key购买 nike

我在 Spring Integration 引用页面上阅读了基于 xml 的配置:

<filter expression="#jsonPath(payload,'$..book[2].isbn') matches '\d-\d{3}-\d{5}-\d'"/>

基于注释的等价物是什么?这样我就可以使用 SpEL 作为过滤消息的逻辑。

谢谢。

最佳答案

您可以使用 Java DSL...

@Bean
public IntegrationFlow filteringFlow() {
return IntegrationFlows.from("someChannel")
.filter("#jsonPath(...) matches ...")
.channel("outChannel")
.get();
}

或者用bean配置它...

@Bean
@ServiceActivator(inputChannel = "someChannel")
public MessageHandler filter() {
MessageFilter filter = new MessageFilter(selector());
filter.setOutputChannelName("outChannel");
return filter;
}

@Bean
public MessageSelector selector() {
return new ExpressionEvaluatingSelector("#jsonPath(...) matches ...");
}

关于java - Spring Integration - 如何使用 SpEL 过滤基于注释的消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47144213/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com