Apache camel 将端点定义为URI而不是以编程方式定义它时,有哪些优点/缺点?
考虑以下几点:Apache camel 将端点定义为URI而不是以编程方式定义它时,有哪些优点/缺点?,apache-camel,Apache Camel,考虑以下几点: public class MyRouteBuilder extends RouteBuilder { @Override public void configure() throws Exception { FileEndpoint dropLocation = new FileEndpoint(); dropLocation.setCamelContext(getContext()); dropLocation.setFile(ne
public class MyRouteBuilder extends RouteBuilder {
@Override
public void configure() throws Exception {
FileEndpoint dropLocation = new FileEndpoint();
dropLocation.setCamelContext(getContext());
dropLocation.setFile(new File("/data"));
dropLocation.setRecursive(true);
dropLocation.setPreMove(".polled");
dropLocation.setNoop(true);
dropLocation.setMaxMessagesPerPoll(1);
from(dropLocation).to(...
对
public class MyBuilder extends RouteBuilder {
@Override
public void configure() throws Exception {
from("file://data?recursive=true&preMove=.polled&noop=true&maxMessagesPerPoll=1").to(...
在编程上,我得到了代码完成等等,而在URI中,一切都在一行中。这些是唯一的利弊吗?还是有其他人要考虑?< / P>
我看到的几乎所有示例都使用了URI方法——这有很强的原因吗?通常,您依赖组件来创建端点实例(通过路由定义),但如果希望与遗留代码集成,通过类结构/实例创建端点等,则可以通过编程实现 总的来说,Camel的一个主要优点是利用其简洁的DSL路由功能在一个地方(路由)描述所有流程/交互。路由定义的程序化程度越高,这些定义就越详细/分散 总的来说,我更喜欢URI方法,因为它更简洁,更容易理解,并且很好地在一个地方操作路由参数……否则,这完全是一个偏好/风格的决定