【Quartz】定时任务中Job、JobDetail、JobDataMap、Trigger概述

1. Job中实现主要的业务逻辑;JobDetail中存储参数等job的配置信息,如JobDataMap;Scheduler主体实现类;Trigger触发Job的执行。

JobDetail jobDetail = JobBuilder.newJob(TimedTaskGroupbuy.class).withIdentity("job"+id.toString(), groupname).build();
		jobDetail.getJobDataMap().put("activityid", id);
		// 表达式调度构建器
		CronScheduleBuilder scheduleBuilder = CronScheduleBuilder.cronSchedule(DateUtil.dateToCron(endtime));

		// 按新的cronExpression表达式构建一个新的trigger
		CronTrigger trigger = TriggerBuilder.newTrigger().withIdentity("job"+id.toString(), groupname).withSchedule(scheduleBuilder).build();
		try {
			QuartzDynamicPlugin.getScheduler().scheduleJob(jobDetail, trigger);
			LogKit.info("创建定时任务成功:"+groupname+",groupbuy_job"+id.toString());
		} catch (Exception e) {
			e.printStackTrace();
		}

参考:

https://blog.csdn.net/evankaka/article/details/45361759

https://blog.csdn.net/github_34889651/article/details/52586239

猜你喜欢

转载自blog.csdn.net/hellorichen/article/details/82148740