java中cron表达式 每10分钟执行一次

在Java中,可以使用Quartz框架来定义和调度任务,包括使用Cron表达式来定义任务的执行时间。下面是一个使用Quartz框架实现每10分钟执行一次任务的示例:

添加Quartz依赖

在Maven项目中,添加以下依赖到pom.xml文件中:

xml
<dependency>
    <groupId>org.quartz-scheduler</groupId>
    <artifactId>quartz</artifactId>
    <version>2.3.2</version>
</dependency>
编写任务类

创建一个Java类,实现Quartz的Job接口,并重写execute方法,例如:

java
public class MyJob implements Job {
    @Override
    public void execute(JobExecutionContext context) throws JobExecutionException {
        // 任务逻辑代码
    }
}
编写任务调度类

创建一个Java类,使用Quartz的JobDetail和Trigger类来定义任务和触发器,例如:

java
import org.quartz.*;
import org.quartz.impl.StdSchedulerFactory;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;

public class MyScheduler {
    public static void main(String[] args) throws ParseException, SchedulerException {
        // 创建调度器工厂
        SchedulerFactory schedulerFactory = new StdSchedulerFactory();
        // 创建调度器实例
        Scheduler scheduler = schedulerFactory.getScheduler();
        // 创建JobDetail实例,指定任务类和名称
        JobDetail jobDetail = JobBuilder.newJob(MyJob.class)
                .withIdentity(“myJob”, “group1”)
                .build();
        // 创建Trigger实例,指定触发器表达式和名称
        Trigger trigger = TriggerBuilder.newTrigger()
                .withIdentity(“myTrigger”, “group1”)
                .withSchedule(CronScheduleBuilder.cronSchedule(“0 0/10 * * * ?”)) // 每10分钟执行一次
                .build();
        // 将JobDetail和Trigger绑定,并添加到调度器中
        scheduler.scheduleJob(jobDetail, trigger);
        // 启动调度器
        scheduler.start();
    }
}

在上述代码中,使用CronScheduleBuilder的cronSchedule方法来创建一个每10分钟执行一次的Cron表达式。然后,将JobDetail和Trigger绑定,并添加到调度器中。最后,启动调度器即可。

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
xiaoxingxing的头像xiaoxingxing管理团队
上一篇 2023年12月12日
下一篇 2023年12月12日

相关推荐