23.5. 使用方法
组件可用于在指定时间触发事件,如下例所示:
from("cron:tab?schedule=0/1+*+*+*+*+?")
.setBody().constant("event")
.log("${body}");
from("cron:tab?schedule=0/1+*+*+*+*+?")
.setBody().constant("event")
.log("${body}");
调度表达式 0/3+10+*+? 也可以写为 0/3 10 * * * ?,并只会在每小时的十分钟内每三秒触发一次事件。
调度表达式中的部分表示(按顺序):
- 秒(可选)
- 分钟
- 小时
- 几天
- 月
- 星期几
- 年(可选)
调度表达式可由 5 到 7 个部分组成。当表达式由 6 个部分组成时,第一个项目是"秒"部分(及年份被视为缺失)。
调度表达式的其他有效示例包括:
-
0/2 * * * ?(5 个部分,每两分钟一个事件) -
0 0/2 * * * MON-FRI 2030(7 个部分,每两分钟一个事件,仅 2030 年)
路由也可以使用 XML DSL 编写。