我们正在将添加到我们的项目中。该平台是Java 7,不久的将来也不会计划迁移到8。所有Spring配置都是Java配置,没有xml。但是,我们找不到用纯Java配置Spring集成的任何指南,但是没有lambdas等。例如,我们需要相当于以下内容的Java 7(来自spring- Integration -extensions的示例):
@Bean
public IntegrationFlow pollingFlow() {
return IntegrationFlows.from(jdbcMessageSource(),
c -> c.poller(Pollers.fixedRate(100).maxMessagesPerPoll(1)))
.transform(new ObjectToJsonTransformer())
.channel("furtherProcessChannel")
.get();
}
我们甚至没有接受过Java 8新特性的培训来理解这一点。这对我们来说是一个真正的死锁吗,迫使迁移到java 8或使用?谢谢。
发布于 2014-09-03 16:14:13
这个c -> c.poller(Pollers.fixedRate(100).maxMessagesPerPoll(1))
相当于:
return IntegrationFlows.from(jdbcMessageSource(),
new EndpointConfigurer<SourcePollingChannelAdapterSpec>() {
@Override
public void configure(SourcePollingChannelAdapterSpec c) {
c.poller(Pollers.fixedRate(100).maxMessagesPerPoll(1));
}
})
任何Lambda都只是一个内联接口实现,所以,您需要在IDE中做的只是键入new
并按下CTRL+SHIFT+SPACE
--并且建议您使用适当的实现。
就这样。
发布于 2014-09-03 15:06:14
请查看官方的Spring框架参考指南。
这是您的问题所涉及的特定部分。
https://stackoverflow.com/questions/25647601
复制相似问题