Quartz(三)CronTrigger(常用)
程序员文章站
2022-07-14 10:19:41
...
Cron表达式
用于配置CronTrigger实例,是由7个表达式组成的字符串,描述了时间表的详细信息,格式:[秒] [分] [小时] [日] [月] [周] [年]
代码实例
pom包
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.2.3</version>
</dependency>
- HelloJob1
public class HelloJob1 implements Job{
public void execute(JobExecutionContext context) throws JobExecutionException {
Date date = new Date();
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("CronJob实例:"+sf.format(date));
}
}
- 测试类–每秒执行一次任务
public static void main(String[] args) throws SchedulerException {
//创建JobDetail实例 将实例与Hellojob绑定
JobDetail jobDetail = JobBuilder.newJob(HelloJob1.class)
.withIdentity("jobName1","group1")
.build();
//创建一个Trigge实例,定义Job的执行方式
CronTrigger trig= (CronTrigger) TriggerBuilder
.newTrigger()
.withIdentity("myTrigger","group1")
.startNow()
.withSchedule(CronScheduleBuilder.cronSchedule("* * * * * ? *"))
.build();
//创建Schedule实例
SchedulerFactory sfact = new StdSchedulerFactory();
Scheduler scheduler = sfact.getScheduler();
scheduler.start();
scheduler.scheduleJob(jobDetail,trig);
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("当前时间:"+sf.format(new Date()));
}
运行结果:
CronJob实例:2018-08-05 21:16:12
当前时间:2018-08-05 21:16:12
CronJob实例:2018-08-05 21:16:13
CronJob实例:2018-08-05 21:16:14
CronJob实例:2018-08-05 21:16:15
CronJob实例:2018-08-05 21:16:16
CronJob实例:2018-08-05 21:16:17
CronJob实例:2018-08-05 21:16:18
CronJob实例:2018-08-05 21:16:19
CronJob实例:2018-08-05 21:16:20
CronJob实例:2018-08-05 21:16:21
CronJob实例:2018-08-05 21:16:22
上一篇: h5c3 3d部分
下一篇: 闹钟函数alarm()的解释与实践