springboot定时触发器

1.启动类加上@EnableScheduling注解开启定时任务

@EnableScheduling
@SpringBootApplication
@Component("com.pwd")
@ServletComponentScan("com.pwd")
public class StartApp {

    public static void main(String[] args) {
        SpringApplication.run(StartApp.class, args);
    }

}

2.给需要执行的任务加上注解配置参数

/**
 * @ClassName taskTest
 * @Description TODO
 * @AUTHOR 20254265
 * @DATE 2022/4/15 16:29
 **/
@Component
public class taskTest {

    @Scheduled(cron = "*/5 * * * * ?")//每个5秒执行一次任务(方法)
    public void  timeScheduled(){
       System.out.println("xxx");
    }
}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Spring Boot中,触发器通常与定时任务一起使用,用于在特定时间或具体条件满足时触发执行一段代码或任务。Spring Boot提供了多种方式来创建和配置触发器。 1. 使用@Scheduled注解:Spring Boot提供了@Scheduled注解,可以将一个方法标记为定时任务。可以使用cron表达式、固定延迟时间或固定间隔时间来定义触发任务的时间规则。例如: ```java @Service public class MyScheduledService { @Scheduled(cron = "0 0 12 * * ?") // 每天中午12点触发 public void myTask() { // 执行任务逻辑 } } ``` 2. 实现SchedulingConfigurer接口:另一种方式是通过实现SchedulingConfigurer接口来配置触发器。这种方式可以动态地配置不同的触发器。例如: ```java @Configuration @EnableScheduling public class MySchedulerConfig implements SchedulingConfigurer { @Override public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { taskRegistrar.addTriggerTask(() -> { // 执行任务逻辑 }, triggerContext -> { CronTrigger cronTrigger = new CronTrigger("0 0 12 * * ?"); return cronTrigger.nextExecutionTime(triggerContext); }); } } ``` 3. 使用Quartz调度框架:如果需要更复杂的调度需求,可以使用Quartz调度框架。Spring Boot集成了Quartz,并提供了简化的配置方式。可以通过创建JobDetail和Trigger来定义任务和触发器,然后将它们注册到Scheduler中。例如: ```java @Configuration public class QuartzSchedulerConfig { @Bean public JobDetail myJobDetail() { return JobBuilder.newJob(MyJob.class) .withIdentity("myJob") .storeDurably() .build(); } @Bean public Trigger myTrigger() { return TriggerBuilder.newTrigger() .forJob(myJobDetail()) .withIdentity("myTrigger") .withSchedule(CronScheduleBuilder.cronSchedule("0 0 12 * * ?")) .build(); } @Bean public SchedulerFactoryBean schedulerFactoryBean() { SchedulerFactoryBean schedulerFactoryBean = new SchedulerFactoryBean(); schedulerFactoryBean.setTriggers(myTrigger()); // 配置其他属性 return schedulerFactoryBean; } } ``` 这些是Spring Boot中使用触发器的几种常见方法,根据具体需求选择适合的方式来实现定时任务的触发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值