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 中所做的一樣。