| 1. 引入quartz依赖 <dependency>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter-quartz</artifactId> </dependency> 
 
2.配置 @Configuration public class QuartzConfig {     @Bean     public JobDetail quartzDetail(){         return JobBuilder.newJob(QuartzTest.class).withIdentity("QuartzTest").storeDurably().build();     }     @Bean     public SimpleTrigger quartzTrigger(){         SimpleScheduleBuilder scheduleBuilder = SimpleScheduleBuilder.simpleSchedule()                 .withIntervalInSeconds(10)                 .repeatForever();         return TriggerBuilder.newTrigger().forJob(quartzDetail())                 .withIdentity("QuartzTest")                 .withSchedule(scheduleBuilder)                 .build();     } } 
 
3. 测试 public class QuartzTest extends QuartzJobBean {     @Override     protected void executeInternal(JobExecutionContext jobExecutionContext){         System.out.println("quartz执行一次定时任务 ");     } } 
 5. 使用Scheduled注解@Scheduled是spring为定时任务而生的一个注解,查看注解的源码: @Target({ElementType.METHOD, ElementType.ANNOTATION_TYPE}) @Retention(RetentionPolicy.RUNTIME) @Documented @Repeatable(Schedules.class) public @interface Scheduled { //cron表达式     String cron() default ""; //接收一个java.util.TimeZone#ID。     String zone() default ""; //上一次执行完毕时间点之后多长时间再执行     long fixedDelay() default -1; //支持占位符形式的字符串类型的fixedDelay     String fixedDelayString() default ""; //上一次开始执行时间点之后多长时间再执行     long fixedRate() default -1; //支持占位符形式的字符串类型的fixedRateString     String fixedRateString() default ""; //第一次延迟多长时间后再执行         long initialDelay() default -1; //支持占位符形式的字符串类型的initialDelay     String initialDelayString() default ""; } 
 (编辑:广西网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |