15.4. 使用
组件可用于在指定时间触发事件,如下例所示:
from("cron:tab?schedule=0/1+*+*+*+*+?") .setBody().constant("event") .log("${body}");
计划表达式 0/3+10++ +*+?
也可以写为 0/3 10 * * * ?
,且仅在每小时的十分钟内触发一次事件。
调度表达式中的部分表示(按顺序):
- 秒(可选)
- 分钟
- hours
- 几号
- 月
- 周几
- 年(可选)
计划表达式由 5 到 7 部分组成。当表达式由 6 个部分组成时,第一项任务是"秒"部分(并被视为缺失年)。
调度表达式的其他有效示例有:
-
0/2 * * * ?
(5 个部分,每两分钟一个事件。) -
0/2 * * MON-FRI 2030
(7 个部分,仅每两分钟一次发生 2030)
也可以使用 XML DSL 编写路由。
<route> <from uri="cron:tab?schedule=0/1+*+*+*+*+?"/> <setBody> <constant>event</constant> </setBody> <to uri="log:info"/> </route>