美文网首页
quartz ----> Simpletrigger(触发器

quartz ----> Simpletrigger(触发器

作者: 刘小刀tina | 来源:发表于2020-04-29 09:39 被阅读0次
    /**
     * @program: demo-spring-batch
     * @description
     * @author: tina.liu
     * @create: 2020-04-29 08:16
     **/
    @Slf4j
    @PersistJobDataAfterExecution
    public class HelloJobTrigger implements Job {
        @Override
        public void execute(JobExecutionContext context) throws JobExecutionException {
    
            //日期格式
            SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    
            //打印trigger相关的信息
            log.info("trigger的信息,组名是:"+context.getTrigger().getKey().getGroup() +",名字是:"+
                    context.getTrigger().getKey().getName()+",类是:"+
                    context.getTrigger().getKey().getClass());
            //打印 trigger任务开始和结束的时间
            log.info("任务开始时间:"+dateFormat.format(context.getTrigger().getStartTime())+
                    "结束的时间"+dateFormat.format(context.getTrigger().getEndTime()));
    
        }
    }
    
    //创建一个类
    class  HelloSchedulerDemoTrigger{
    
        public static void main(String[] args) throws SchedulerException {
    
            //创建时间的变量
            Date startTime =  new Date();
            startTime.setTime(startTime.getTime()+3000);
    
            Date endTime =  new Date();
            endTime.setTime(endTime.getTime()+10000);
    
    
            //1.获取调度器
            Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
            //2 获取任务实例 jobDetail
            JobDetail jobDetail = JobBuilder.newJob(HelloJobTrigger.class)
                    .usingJobData("msg", "tina参数")//传递参数
                    .withIdentity("job1", "group1") //定义名称
                    .build();
            //3 获取触发器trigger
            Trigger trigger = TriggerBuilder.newTrigger()
                    .withIdentity("trigger1", "group1") //定义名称
                    .startAt(startTime)//开始时间
                    .endAt(endTime)//结束时间
                    .build();
            //4 让调度器关联任务和触发器,保证按照触发器定义的条件执行任务
            scheduler.scheduleJob(jobDetail,trigger);
            //5 启动
              scheduler.start();
        }
    
    }
    
    
    

    相关文章

      网友评论

          本文标题:quartz ----> Simpletrigger(触发器

          本文链接:https://www.haomeiwen.com/subject/obowwhtx.html