1,日期格式转换
//定时任务格式转换
public static String convertCronTime(Date jobDate){
//https://blog.csdn.net/qq_39706128/article/details/80001500
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time = format.format(jobDate);
String[] times = time.split(" ");
String[] timesF = times[1].split(":");
String[] timesT = times[0].split("-");
String jobTime = timesF[2]+" "+timesF[1]+" "+timesF[0]+" "+timesT[2]+" "+
timesT[1]+"/1"+" ? "+timesT[0];
return jobTime;
}
2,创建类继承Runnable接口,执行定时任务的业务详情-异步
public class ConfigTask implements Runnable{
private static final Logger logger = Logger.getLogger(ConfigTask.class);
@Override
public void run() {
logger.info("ConfigTask run()...");
}
}
3,创建定时任务
@Autowired
private ThreadPoolTaskScheduler threadPoolTaskScheduler;
@Bean
public ThreadPoolTaskScheduler threadPoolTaskScheduler() {
return new ThreadPoolTaskScheduler();
}
/***
* 创建定时任务
*/
public void createCronJob(Date date,Runnable task){
threadPoolTaskScheduler.schedule(task,
new CronTrigger(CommonUtil.convertCronTime(date)));
}