CronTrigger的使用

论坛 期权论坛 脚本     
匿名技术用户   2021-1-3 05:27   11   0
CronTrigger表达式时间字段
位置 时间域名 允许值 允许的特殊字符
1 0-59 ,-*/
2 分钟 0-59 ,-*/
3 小时 0-23 ,-*/
4 日期 1-31 ,-*?/L W C
5 月份 1-12 ,-*/
6 星期 1-7 ,-*?/L C #
7 年(可选) 空值 1970-2099 ,-*/

实例:

import java.util.Date;

import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;

public class SimpleJob implements Job {

 @Override
 public void execute(JobExecutionContext jobCtx)
   throws JobExecutionException {
  System.out.println(jobCtx.getTrigger().getName() +  " triggered.time.is:" + (new Date()));
 }
}

import org.quartz.CronExpression;
import org.quartz.CronTrigger;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerFactory;
import org.quartz.impl.StdSchedulerFactory;

public class CronTriggerRunner {
 public static void main(String[] args) {
  try {
   //创建一个JobDdtail实例,指定SimpleJob,组名为jgroup1,名称为job1_2
   JobDetail jobDetail = new JobDetail("job1_2", "jgroup1", SimpleJob.class);
   
   //创建CronTrigger,指定组及名称
   CronTrigger cronTrigger = new CronTrigger("trigger1_2", "tgroup1");
   //定义Cron表达式,每隔5秒运行一次
   CronExpression cexp = new CronExpression("0/5 * * * * ?");
   
   cronTrigger.setCronExpression(cexp);
   
   //通过SchedulerFactory获取一个调度器实例
   SchedulerFactory schedulerFactory = new StdSchedulerFactory();
   Scheduler scheduler = schedulerFactory.getScheduler();
   
   //注册并进行调度
   scheduler.scheduleJob(jobDetail, cronTrigger);
   //调度开始
   scheduler.start();
  } catch (Exception e) {
   e.printStackTrace();
  }
  
 }
}

运行结果:

trigger1_2 triggered.time.is:Wed Apr 17 16:44:50 CST 2013

trigger1_2 triggered.time.is:Wed Apr 17 16:44:55 CST 2013

trigger1_2 triggered.time.is:Wed Apr 17 16:45:00 CST 2013

trigger1_2 triggered.time.is:Wed Apr 17 16:45:05 CST 2013

默认情况下Cron表达式对应当前的时区,可以通过CronTriggerRunner的setTimeZone(java.util.TimeZone timeZone)方法显式指定时区。用户也可以通过setStartTime(java.util.Date startTime)和setEndTime(java.util.Date endTime)指定开始和结束的时间

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP