使用流程标记或使用转换为标记来引用处理器有什么区别?
<route id="sample"><from uri="" /><to uri="bean:mqResponseProcessor" /></route>
<route id="sample"><from uri="" /><process ref="mqResponseProcessor"/></route>
答案 0 :(得分:2)
如果你的bean是org.apache.camel.Processor
的实现,那么没有实际的区别。但是,使用bean binding可以为您提供更大的灵活性。其中豆豆
org.apache.camel.Processor
使用bean和bean绑定有点像类固醇处理器。
答案 1 :(得分:1)
没有差异,都做同样的工作。
使用java DSL,您可以将匿名内部类与过程语法放在一起。
from("direct:demo").process(new Processor() {
public void process(Exchange exchange) throws Exception {
// some stuff
}
}).to("mock:demoEnd");
流程语法还可以提高代码的可读性:
<route id="sample">
<from uri="direct:demo"/>
<process ref="firstProcessor"/>
<to uri="mock:otherRoute"/>
<process ref="secondProcessor"/>
<to uri="mock:endTest"/>
</route>
Vs的
<route id="sample">
<from uri="direct:demo"/>
<to uri="bean:firstProcessor"/>
<to uri="mock:otherRoute"/>
<to uri="bean:secondProcessor"/>
<to uri="mock:endTest"/>
</route>