我们出于相同目的使用石英。
我跨过Timer组件,但是找不到在给定时间触发Timer的任何代码,但是Timer不断轮询。就像我希望计时器每天执行12:10。
以下示例,但对工作安排没有帮助:
Date future = new Date(new Date().getTime() + 1000);
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");
String time = sdf.format(future);
fromF("timer://simpleTimer?time=%s&pattern=dd-MM-yyyy HH:mm:ss", time)
.setBody(simple("Hello from timer at ${header.firedTime}"))
.to("stream:out");
您能帮我配置定时器吗?
尝试将time
属性设置为12:10,将fixedRate
属性设置为true
,将period
属性设置为1天(请参阅Timer component propeties)。
此外,如果您使用的是Camel 3.x,我的建议是使用类型安全的端点DSL,这将有助于避免配置错误。示例:
URI字符串端点
from("timer:click?period=3000&fixedRate=true")
.to("seda:foo?blockWhenFull=true");
端点DSL
from(timer("click").period(3000).fixedRate(true))
.to(seda("foo").blockWhenFull(true));