FunctionExpression
我们引入了 FunctionExpression
类(SpEL 的 Expression
接口的一个实现)以允许我们使用 lambdas 和 generics
。为 DSL 组件提供了 Function<T, R>
选项,同时还提供了 expression
选项,当存在来自 Core Spring Integration 的隐式 Strategy
变体时。下面的示例展示了如何使用函数表达式。
.enrich(e -> e.requestChannel("enrichChannel")
.requestPayload(Message::getPayload)
.propertyFunction("date", m -> new Date()))
FunctionExpression
也支持运行时类型转换,这与 SpelExpression
中所做的一样。