Apache camel 自动生成路由ID';骆驼
在apache camel中,是否有一种方法可以自动生成routeId,并使用路由编号(在RouteDefinitionHelper中生成)覆盖现有的路由ID?您可以直接为路由以及路由中的处理器指定它们Apache camel 自动生成路由ID';骆驼,apache-camel,Apache Camel,在apache camel中,是否有一种方法可以自动生成routeId,并使用路由编号(在RouteDefinitionHelper中生成)覆盖现有的路由ID?您可以直接为路由以及路由中的处理器指定它们 from("direct:start").routeId("MyMainRoute") .to("direct:out").id("MyOutputProcessor"); 这些ID将在jConsole中可见,因此您可以查看路由和处理器的统计信息。据我所知,您无法使用路由命名的自动生成
from("direct:start").routeId("MyMainRoute")
.to("direct:out").id("MyOutputProcessor");
这些ID将在jConsole中可见,因此您可以查看路由和处理器的统计信息。据我所知,您无法使用路由命名的自动生成策略,但您可以执行类似的操作:
private String myURI;
from("jms:queue:" + myURI).routeId("JmsComponent:" + myURI)
.to("....");
通过使用blueprint或spring之类的工具将变量注入java类,您可以更改URI,并相应地调整路由名称。您还可以在私有变量中使用完整的URI,然后自己解析endpointURI并将其格式化为routeId。您可以在定义路由时编写自己的路由id,强烈建议您也使用一个路由id。我可以知道更改默认路由id的意图吗?我希望约定的格式为route:。因此,在上下文中的所有路由中,我可以很好地识别它们。我希望代码精确且不太冗长,即使不提供routeId,我也应该使用上述格式生成一个。我不确定是否要在内部自定义驼峰路由名称。我觉得在配置后命名路由是一种更好的做法。这很好,但我希望我的路由自动生成其自己的特定格式的RouteId路由::。我相当确定没有现有的方法来设置自动生成策略。对于每个路由,您可以同时设置from url和路由url。如果多次复制单个路由,那么可以使用该路由创建父bean,并为from uri和routeId使用单个变量。除此之外,我认为您的想法还不错,您可能希望将此作为功能改进请求打开。