当前位置: 首页> 教育> 锐评 > 深圳疫情出行最新规定_云南网络推广公司排名_如何做好搜索引擎优化工作_百度指数查询移民

深圳疫情出行最新规定_云南网络推广公司排名_如何做好搜索引擎优化工作_百度指数查询移民

时间:2025/8/25 8:43:59来源:https://blog.csdn.net/cxx0316/article/details/143313515 浏览次数:0次
深圳疫情出行最新规定_云南网络推广公司排名_如何做好搜索引擎优化工作_百度指数查询移民

       在⽇常项⽬运⾏中,我们总会有需求在某⼀时间段周期性的执⾏某个动作。⽐如每天在某个时间段导 出报表,或者每隔多久统计⼀次现在在线的⽤户量等。

       在 Spring Boot 中有 Java ⾃带的 java.util.Timer 类,也有强⼤的调度器 Quartz,还有 Spring Boot ⾃带的Scheduled 来实现。Scheduled 在 Spring3.X 引⼊,默认 SpringBoot ⾃带该功能,使⽤起来也 很简单,在启动类级别添加 @EnableScheduling 注解即可引⼊定时任务环境。但遗憾的是 Scheduled 默认不⽀持分布式环境,这⾥主要讲解 Quartz 时钟调度框架与 Spring Boot 集成。

1 环境整合配置

<!-- Quartz -->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-quartz</artifactId>
</dependency>

2 源代码添加

2.1 定义job

       com.xxxx.springboot 下添加 jobs 包,定义待执⾏ job 任务。实现 Job 接⼝,并且在 execute ⽅法 中实现⾃⼰的业务逻辑。

public class MyFirstJob implements Job {private Logger log = LoggerFactory.getLogger(MyFirstJob.class);@Overridepublic void execute(JobExecutionContext context) throws
JobExecutionException {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");log.info(sdf.format(new Date()) + "-->" + "Hello Spring Boot
Quartz...");}
}

2.2 构建调度配置类

       创建 JobDetail 实例并定义 Trigger 注册到 scheduler ,启动 scheduler 开启调度

@Configuration
public class QuartzConfig {@Beanpublic JobDetail jobDetail1(){return JobBuilder.newJob(MyFirstJob.class).storeDurably().build();}@Beanpublic Trigger trigger1(){SimpleScheduleBuilder scheduleBuilder =
SimpleScheduleBuilder.simpleSchedule()// 每⼀秒执⾏⼀次.withIntervalInSeconds(1)// 永久重复,⼀直执⾏下去.repeatForever();return TriggerBuilder.newTrigger().withIdentity("trigger1","group1").withSchedule(scheduleBuilder).forJob(jobDetail1()).build();}// 每5秒触发⼀次任务@Beanpublic Trigger trigger2(){return TriggerBuilder.newTrigger().withIdentity("trigger2", "group1").withSchedule(CronScheduleBuilder.cronSchedule("0/5 * * * * ?
*")).forJob(jobDetail1()).build();}
}

2.3 启动 StarterApplication

查看控制台打印效果:

关键字:深圳疫情出行最新规定_云南网络推广公司排名_如何做好搜索引擎优化工作_百度指数查询移民

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: