diff --git a/itbaima-monitor-client/src/main/java/com/example/config/QuartzConfiguration.java b/itbaima-monitor-client/src/main/java/com/example/config/QuartzConfiguration.java new file mode 100644 index 0000000..7b106b4 --- /dev/null +++ b/itbaima-monitor-client/src/main/java/com/example/config/QuartzConfiguration.java @@ -0,0 +1,36 @@ +package com.example.config; + +import com.example.task.MonitorJobBean; +import lombok.extern.slf4j.Slf4j; +import org.quartz.*; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import oshi.SystemInfo; + +@Slf4j +@Configuration +public class QuartzConfiguration { + + @Bean + public SystemInfo info(){ + return new SystemInfo(); + } + + @Bean + public JobDetail jobDetailFactoryBean() { + return JobBuilder.newJob(MonitorJobBean.class) + .withIdentity("monitor-task") + .storeDurably() + .build(); + } + + @Bean + public Trigger cronTriggerFactoryBean(JobDetail detail) { + CronScheduleBuilder cron= CronScheduleBuilder.cronSchedule("*/10 * * * * ?"); + return TriggerBuilder.newTrigger() + .forJob(detail) + .withIdentity("monitor-timer") + .withSchedule(cron) + .build(); + } +}