
com.xiaoleilu.hutool.extra.CronUtil Maven / Gradle / Ivy
package com.xiaoleilu.hutool.extra;
import java.util.Map.Entry;
import com.xiaoleilu.hutool.convert.Convert;
import com.xiaoleilu.hutool.exceptions.UtilException;
import com.xiaoleilu.hutool.setting.Setting;
import com.xiaoleilu.hutool.util.ClassUtil;
import it.sauronsoftware.cron4j.Scheduler;
import it.sauronsoftware.cron4j.Task;
/**
* 定时任务工具类
* @author xiaoleilu
*@deprecated Please use [hutool-cron] module
*/
public class CronUtil {
// private final static Log log = StaticLog.get();
/** Crontab配置文件 */
public final static String CRONTAB_CONFIG_PATH = "config/cron4j.setting";
private final static Scheduler scheduler = new Scheduler();
private static Setting crontabSetting;
/**
* 自定义定时任务配置文件
* @param cronSetting 定时任务配置文件
*/
public static void setCronSetting(Setting cronSetting) {
crontabSetting = cronSetting;
}
/**
* 自定义定时任务配置文件路径
* @param cronSettingPath 定时任务配置文件路径(相对绝对都可)
*/
public static void setCronSetting(String cronSettingPath) {
crontabSetting = new Setting(cronSettingPath, Setting.DEFAULT_CHARSET, false);
}
/**
* 加入定时任务
* @param schedulingPattern 定时任务执行时间的crontab表达式
* @param task 任务
* @return 定时任务ID
*/
public static String schedule(String schedulingPattern, Task task) {
return scheduler.schedule(schedulingPattern, task);
}
/**
* 加入定时任务
* @param schedulingPattern 定时任务执行时间的crontab表达式
* @param task 任务
* @return 定时任务ID
*/
public static String schedule(String schedulingPattern, Runnable task) {
return scheduler.schedule(schedulingPattern, task);
}
/**
* 批量加入配置文件中的定时任务
* @param cronSetting 定时任务设置文件
*/
public static void schedule(Setting cronSetting) {
for (Entry
© 2015 - 2025 Weber Informatics LLC | Privacy Policy