Apache camel 骆驼豆生命周期战略?
我有一条骆驼路线,如下图所示。如何设置Camel以在每次运行路由时创建CodeRunner的新实例Apache camel 骆驼豆生命周期战略?,apache-camel,Apache Camel,我有一条骆驼路线,如下图所示。如何设置Camel以在每次运行路由时创建CodeRunner的新实例 public void configure() { from("activemq:queue:foo?asyncConsumer=true&concurrentConsumers=10") .bean(new codeRunner(), "runCode") .to("s
public void configure() {
from("activemq:queue:foo?asyncConsumer=true&concurrentConsumers=10")
.bean(new codeRunner(), "runCode")
.to("stream:out");
}
您可以在bean上使用scope=“prototype”。这里有一些例子。路线:
from("timer://foo?period=30s")
.setBody(simple("bean:test?method=getDate"))
.log(LoggingLevel.INFO, "Body:${body}");
豆子:
}
输出:
2018-11-13 16:45:07,372 | INFO | #6 - timer://foo | route4 | 98 - org.apache.camel.camel-core - 2.16.3 | Body:2018-11-13 16:45:07.37
2018-11-13 16:45:37,371 | INFO | #6 - timer://foo | route4 | 98 - org.apache.camel.camel-core - 2.16.3 | Body:2018-11-13 16:45:37.37
2018-11-13 16:46:07,371 | INFO | #6 - timer://foo | route4 | 98 - org.apache.camel.camel-core - 2.16.3 | Body:2018-11-13 16:46:07.371
2018-11-13 16:46:37,375 | INFO | #6 - timer://foo | route4 | 98 - org.apache.camel.camel-core - 2.16.3 | Body:2018-11-13 16:46:37.375
您是否正在使用spring/blueprint来运行camel?目前还没有,但此解决方案正在进行中。这就是我要做的吗?你说的“每次路线运行”是什么意思?
public class Test {
final Timestamp date;
public Test() {
this.date = new Timestamp(System.currentTimeMillis());
}
public Timestamp getDate() {
return date;
}
2018-11-13 16:45:07,372 | INFO | #6 - timer://foo | route4 | 98 - org.apache.camel.camel-core - 2.16.3 | Body:2018-11-13 16:45:07.37
2018-11-13 16:45:37,371 | INFO | #6 - timer://foo | route4 | 98 - org.apache.camel.camel-core - 2.16.3 | Body:2018-11-13 16:45:37.37
2018-11-13 16:46:07,371 | INFO | #6 - timer://foo | route4 | 98 - org.apache.camel.camel-core - 2.16.3 | Body:2018-11-13 16:46:07.371
2018-11-13 16:46:37,375 | INFO | #6 - timer://foo | route4 | 98 - org.apache.camel.camel-core - 2.16.3 | Body:2018-11-13 16:46:37.375