Package org.aoju.bus.cron
Class Builder
java.lang.Object
org.aoju.bus.cron.Builder
定时任务工具类
此工具持有一个全局
Scheduler,所有定时任务在同一个调度器中执行
setMatchSecond(boolean) 方法用于定义是否使用秒匹配模式,如果为true,则定时任务表达式中的第一位为秒,否则为分,默认是分- Since:
- Java 17+
- Version:
- 6.5.0
- Author:
- Kimi Liu
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionstatic SchedulermatchedDates(String patternStr, long start, long end, int count, boolean isMatchSecond) 列举指定日期范围内所有匹配表达式的日期matchedDates(String patternStr, Date start, int count, boolean isMatchSecond) 列举指定日期之后(到开始日期对应年年底)内所有匹配表达式的日期matchedDates(String patternStr, Date start, Date end, int count, boolean isMatchSecond) 列举指定日期范围内所有匹配表达式的日期matchedDates(CronPattern pattern, long start, long end, int count, boolean isMatchSecond) 列举指定日期范围内所有匹配表达式的日期static boolean移除任务static voidrestart()重新启动定时任务 此方法会清除动态加载的任务,重新启动后,守护线程与否与之前保持一致static String加入定时任务static String加入定时任务static String加入定时任务static voidschedule(org.aoju.bus.setting.magic.PopSetting cronSetting) 批量加入配置文件中的定时任务static voidsetCronSetting(String cronSettingPath) 自定义定时任务配置文件路径static voidsetCronSetting(org.aoju.bus.setting.magic.PopSetting cronSetting) 自定义定时任务配置文件static voidsetMatchSecond(boolean isMatchSecond) 设置是否支持秒匹配 此方法用于定义是否使用秒匹配模式,如果为true,则定时任务表达式中的第一位为秒,否则为分,默认是分static voidstart()开始,非守护线程模式static voidstart(boolean isDeamon) 开始static voidstop()停止static voidupdatePattern(String id, CronPattern pattern) 更新Task的执行时间规则
-
Field Details
-
CRONTAB_CONFIG_PATH
Crontab配置文件- See Also:
-
-
Method Details
-
setCronSetting
public static void setCronSetting(org.aoju.bus.setting.magic.PopSetting cronSetting) 自定义定时任务配置文件- Parameters:
cronSetting- 定时任务配置文件
-
setCronSetting
自定义定时任务配置文件路径- Parameters:
cronSettingPath- 定时任务配置文件路径(相对绝对都可)
-
setMatchSecond
public static void setMatchSecond(boolean isMatchSecond) 设置是否支持秒匹配 此方法用于定义是否使用秒匹配模式,如果为true,则定时任务表达式中的第一位为秒,否则为分,默认是分- Parameters:
isMatchSecond-true支持,false不支持
-
schedule
加入定时任务- Parameters:
schedulingPattern- 定时任务执行时间的crontab表达式task- 任务- Returns:
- 定时任务ID
-
schedule
加入定时任务- Parameters:
id- 定时任务IDschedulingPattern- 定时任务执行时间的crontab表达式task- 任务- Returns:
- 定时任务ID
-
schedule
加入定时任务- Parameters:
schedulingPattern- 定时任务执行时间的crontab表达式task- 任务- Returns:
- 定时任务ID
-
schedule
public static void schedule(org.aoju.bus.setting.magic.PopSetting cronSetting) 批量加入配置文件中的定时任务- Parameters:
cronSetting- 定时任务设置文件
-
remove
移除任务- Parameters:
schedulerId- 任务ID- Returns:
- 是否移除成功,
false表示未找到对应ID的任务
-
updatePattern
更新Task的执行时间规则- Parameters:
id- Task的IDpattern-CronPattern
-
getScheduler
- Returns:
- 获得Scheduler对象
-
start
public static void start()开始,非守护线程模式- See Also:
-
start
public static void start(boolean isDeamon) 开始- Parameters:
isDeamon- 是否以守护线程方式启动,如果为true,则在调用stop()方法后执行的定时任务立即结束,否则等待执行完毕才结束
-
restart
public static void restart()重新启动定时任务 此方法会清除动态加载的任务,重新启动后,守护线程与否与之前保持一致 -
stop
public static void stop()停止 -
matchedDates
public static List<Date> matchedDates(String patternStr, Date start, int count, boolean isMatchSecond) 列举指定日期之后(到开始日期对应年年底)内所有匹配表达式的日期- Parameters:
patternStr- 表达式字符串start- 起始时间count- 列举数量isMatchSecond- 是否匹配秒- Returns:
- 日期列表
-
matchedDates
public static List<Date> matchedDates(String patternStr, Date start, Date end, int count, boolean isMatchSecond) 列举指定日期范围内所有匹配表达式的日期- Parameters:
patternStr- 表达式字符串start- 起始时间end- 结束时间count- 列举数量isMatchSecond- 是否匹配秒- Returns:
- 日期列表
-
matchedDates
public static List<Date> matchedDates(String patternStr, long start, long end, int count, boolean isMatchSecond) 列举指定日期范围内所有匹配表达式的日期- Parameters:
patternStr- 表达式字符串start- 起始时间end- 结束时间count- 列举数量isMatchSecond- 是否匹配秒- Returns:
- 日期列表
-
matchedDates
public static List<Date> matchedDates(CronPattern pattern, long start, long end, int count, boolean isMatchSecond) 列举指定日期范围内所有匹配表达式的日期- Parameters:
pattern- 表达式start- 起始时间end- 结束时间count- 列举数量isMatchSecond- 是否匹配秒- Returns:
- 日期列表
-