Quartz作业调度

来源:互联网 发布:淘宝土特产店铺介绍 编辑:程序博客网 时间:2024/06/15 04:20

HelloJob.java,具体执行的任务

package No01简单的定时任务;import org.quartz.Job;import org.quartz.JobExecutionContext;import org.quartz.JobExecutionException;import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class HelloJob implements Job {        Logger logger = LoggerFactory.getLogger(this.getClass());    @Override    public void execute(JobExecutionContext arg0) throws JobExecutionException {        // 此任务仅打印日志便于调试、观察        this.logger.debug(this.getClass().getName() + " trigger...");    }}

package No01简单的定时任务;import java.util.concurrent.TimeUnit;import org.quartz.JobBuilder;import org.quartz.JobDetail;import org.quartz.Scheduler;import org.quartz.SchedulerException;import org.quartz.SimpleScheduleBuilder;import org.quartz.Trigger;import org.quartz.TriggerBuilder;import org.quartz.impl.StdSchedulerFactory;import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class Bootstrap {    private static Logger logger = LoggerFactory.getLogger(Bootstrap.class);    public static void main(String[] args) {        try {            // 获取Scheduler实例            Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();            scheduler.start();            // 具体任务            JobDetail job = JobBuilder.newJob(HelloJob.class).withIdentity("job1", "group1").build();            // 触发时间点            SimpleScheduleBuilder simpleScheduleBuilder = SimpleScheduleBuilder.simpleSchedule()                    .withIntervalInSeconds(5).repeatForever();            Trigger trigger = TriggerBuilder.newTrigger().withIdentity("trigger1", "group1")                    .startNow().withSchedule(simpleScheduleBuilder).build();            // 交由Scheduler安排触发            scheduler.scheduleJob(job, trigger);                        /* 为观察程序运行,此设置主程序睡眠3分钟才继续往下运行(因下一个步骤是“关闭Scheduler”) */            try {                TimeUnit.MINUTES.sleep(3);            } catch (InterruptedException e) {                e.printStackTrace();            }            // 关闭Scheduler            scheduler.shutdown();        } catch (SchedulerException se) {            logger.error(se.getMessage(), se);        }    }}

转载:点击打开链接

0 0
原创粉丝点击