Python 官方文档:入门教程 => 点击学习
目录1.Quartz是什么?2. Quartz谁维护?3. 简单的应用3.1 需求描述3.1.1. spring中自带的3.1.2. Quartz的简单使用4. Quartz相较Sp
Quartz是一个开源的Java调度框架,可以用来实现在指定的时间或时间间隔触发任务执行的功能。它支持多种方式的作业调度,如基于日期、时间间隔和Cron表达式的调度。Quartz允许开发人员定义并执行大量的作业,并且在大规模部署时可以实现高可靠性、高可用性和可伸缩性。
Quartz框架包括一个调度器、触发器和作业,其中:
Quartz框架可以与Spring框架集成,从而实现更加灵活和高效的作业调度。使用Quartz框架可以方便地实现定时任务、日志处理、数据备份等功能,是Java应用程序中常用的调度框架之一。
Quartz最初是由Terracotta公司开发的,现在Quartz的开发由Quartz项目社区维护和管理。Quartz社区包括Quartz开发团队和其他贡献者,他们共同负责开发、维护和推广Quartz框架,以确保其高质量和持续发展。Quartz项目社区是开放的,任何人都可以参与其中并为框架做出贡献。Quartz社区通过社区网站、邮件列表、GitHub存储库、Stack Overflow和其他社交媒体平台来支持和促进社区交流和参与。
定时执行一段代码
@Component
@EnableScheduling
public class ScheduledTask {
@Scheduled(fixedDelay = 1000)
public void task(){
// 添加要执行的任务代码
System.out.println("woshixiaocai");
}
}
public class MyJob implements Job {
public void execute(JobExecutionContext context) throws JobExecutionException {
// 添加要执行的任务代码
System.out.println("woshixiaocai");
}
}
@Component
public class MyScheduler {
@Value("${jcrbcorn}")
private String jcrbcorn;
@Autowired
private Scheduler scheduler;
@PostConstruct
public void startScheduler() throws SchedulerException {
Trigger trigger = TriggerBuilder.newTrigger()
.withIdentity("myTrigger", "group1")
.withSchedule(CronScheduleBuilder.cronSchedule(jcrbcorn))
.build();
JobDetail jobDetail = JobBuilder.newJob(MyJob.class)
.withIdentity("myJob", "group1")
.build();
scheduler.scheduleJob(jobDetail, trigger);
scheduler.start();
}
public void stopScheduler() throws SchedulerException {
scheduler.shutdown(true);
}
public void updateScheduler(String cronExpression) throws SchedulerException {
Trigger oldTrigger = scheduler.getTrigger(new TriggerKey("myTrigger", "group1"));
Trigger newTrigger = TriggerBuilder.newTrigger()
.withIdentity("myTrigger", "group1")
.withSchedule(CronScheduleBuilder.cronSchedule("0 0/10 * * * ?"))
.build();
scheduler.rescheduleJob(oldTrigger.geTKEy(), newTrigger);
}
}
Quartz和Spring的@Scheduled都是用于任务调度的框架,它们的使用都非常方便和灵活,可以实现各种复杂的任务调度需求。两者的具体优劣可以根据具体需求和场景而定,以下是Quartz相较Spring的@Scheduled的几个优势:
到此这篇关于Java中简单实用Quartz概述的文章就介绍到这了,更多相关java quartz内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
--结束END--
本文标题: Java中简单实用Quartz概述
本文链接: https://www.lsjlt.com/news/196189.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0