Springboot 整合 Quartz框架做定时任务

在Spring Boot中整合Quartz,可以实现定时任务调度的功能

  1、首先,在pom.xml文件中添加Quartz和Spring Boot Starter Quartz的依赖:

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

   2、创建一个定时任务类,实现Job接口,并重写execute()方法,在该方法中编写具体的定时任务逻辑。这里以打印当前时间为例:

import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import java.time.LocalDateTime;public class MyJob implements Job {@Overridepublic void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {// 在这里编写定时任务的逻辑System.out.println("Current time: " + LocalDateTime.now());}
}

   3、创建一个Quartz配置类,配置JobDetail和Trigger。这里以每隔5秒执行一次任务为例:

import org.quartz.JobBuilder;
import org.quartz.Trigger;
import org.quartz.TriggerBuilder;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.quartz.JobDetailFactoryBean;
import org.springframework.scheduling.quartz.SimpleTriggerFactoryBean;@Configuration
public class QuartzConfig {// 配置JobDetail@Beanpublic JobDetailFactoryBean jobDetail() {JobDetailFactoryBean factoryBean = new JobDetailFactoryBean();factoryBean.setJobClass(MyJob.class); // 设置Job类return factoryBean;}// 配置Trigger@Beanpublic SimpleTriggerFactoryBean trigger(JobDetailFactoryBean jobDetail) {SimpleTriggerFactoryBean factoryBean = new SimpleTriggerFactoryBean();factoryBean.setJobDetail(jobDetail.getObject()); // 设置JobDetailfactoryBean.setRepeatInterval(5000); // 设置执行间隔,单位毫秒factoryBean.setRepeatCount(SimpleTriggerFactoryBean.REPEAT_INDEFINITELY); // 设置重复次数,这里设置为无限次return factoryBean;}
}

4、在Spring Boot的启动类上添加@EnableScheduling注解,启用定时任务功能:

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableScheduling;@SpringBootApplication
@EnableScheduling
public class Application {public static void main(String[] args) {SpringApplication.run(Application.class, args);}
}

现在,当应用启动后,定时任务就会按照配置执行。在这个例子中,会每隔5秒执行一次MyJob中定义的任务。

本文只是教大家简单使用,如果需要Quartz定时任务做管理任务,可以直接复用若依框架的Quartz模块,他们这个做的挺好的

地址:RuoYi: 🎉 基于SpringBoot的权限管理系统 易读易懂、界面简洁美观。 核心技术采用Spring、MyBatis、Shiro没有任何其它重度依赖。直接运行即可用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/2932.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

做外贸而已,千万不要太老实了!

朋友们&#xff0c;跟你们分享个秘密&#xff0c;做外贸&#xff0c;别太实诚了&#xff01;我知道很多新人小伙伴刚入行那会儿&#xff0c;几个月都开不了张单子。原因&#xff0c;就是太老实了&#xff01; 1客户说价格高 新手可能会直说&#xff1a;“亲&#xff0c;我们的…

一些好听且有心意的英文全名Burwood新南威尔士州伯伍德喝酒上脸就是乙醛中毒1. 康奈尔大学官宣恢复标化要求2. 香港城市大学(东莞)正式设立!

目录 一些好听且有心意的英文全名 Burwood新南威尔士州伯伍德 喝酒上脸就是乙醛中毒 1. 康奈尔大学官宣恢复标化要求 2. 香港城市大学&#xff08;东莞&#xff09;正式设立&#xff01; 一些好听且有心意的英文全名 在选择好听且有意义的英文全名时&#xff0c;我们可…

pandas保存dict字段再读取成DataFrame

背景&#xff1a; pandas DataFrame中有字段是dict类型&#xff0c;使用to_excel方法直接保存下次读取出来&#xff0c;dict字段会变成字符串&#xff0c;无法识别&#xff1b; 目标&#xff1a;保存dict字段&#xff0c;下次读出来还是dict 方法一&#xff1a;使用json.dum…

Electron 桌面应用程序的框架,快速入门搭建一个桌面程序

Electron是什么&#xff1f; Electron 快捷传送门,点击走你。。。 快速让你的web项目成为桌面应用 // 初始化一个 package.json npm init// 添加 Electron 依赖&#xff0c;安装过可忽略 npm install --save-dev electron{ "name": "my-electron-app",&…

synchronized的底层原理

目录 介绍 实现原理 对象头 Monitor&#xff08;监视器&#xff09; 锁升级 偏向锁 轻量级锁 重量级锁 锁的优缺点 介绍 synchronized 是 Java 中的关键字&#xff0c;它用于锁定代码块或方法&#xff0c;以确保同一时刻只有一个线程可以进入被锁定的部分。这在多线程…

css盒子设置圆角边框的方法

前言 欢迎来到我的博客 个人主页&#xff1a;北岭敲键盘的荒漠猫-CSDN博客 本文为我整理的设置圆角边框的方法 需求描述 我们在设置盒子边框时&#xff0c;他总是方方正正的。 我们想让这个直直的边框委婉一点该怎么办呢。这个就提到了我们这篇文章讲的东西&#xff1a; bord…

RC-u2 智能服药助手(raicom睿抗机器人CAIP编程技能赛)

文章目录 RC-u2 智能服药助手题目描述模拟 RC-u2 智能服药助手 题目描述 智能看护中很重要的环节是安排需要服药的老年人的服药计划。 已知机器人需要照顾的某位老年人需要服用 N 种药物&#xff0c;但某些药物不宜间隔过短服用 —— 比如降糖药一般遵医嘱日服 3 次&#xf…

聚观早报 | OpenAI在印度开始招聘;特斯拉将发布一季度财报

聚观早报每日整理最值得关注的行业重点事件&#xff0c;帮助大家及时了解最新行业动态&#xff0c;每日读报&#xff0c;就读聚观365资讯简报。 整理丨Cutie 4月23日消息 OpenAI在印度开始招聘 特斯拉将发布一季度财报 理想汽车全线产品降价 优酷升级悬疑剧场为白夜剧场 …

Leetcode 41. 缺失的第一个正数和Leetcode 155. 最小栈

文章目录 Leetcode 41. 缺失的第一个正数题目描述C语言题解和思路解题思路 Leetcode 155. 最小栈题目描述C语言题解和思路解题思路 Leetcode 41. 缺失的第一个正数 题目描述 给你一个未排序的整数数组 nums &#xff0c;请你找出其中没有出现的最小的正整数。 请你实现时间复…

JavaScript:阻止默认行为导致所有输入框无法输入内容

每次解决一个问题&#xff0c;又会遇到新的问题&#xff0c;最近都是忙着改大屏设计器&#xff0c;加容器组件&#xff0c;眼看着要完成了&#xff0c;突然遇到一个大问题&#xff0c;表单的输入框突然全部无法输入数字和英文&#xff0c;搜了很多类似情况&#xff0c;大多数说…

ffmpeg支持MP3编码的方法

目录 现象 解决办法 如果有编译包没有链接上的情况 现象 解决办法 在ffmpeg安装包目录下 &#xff0c;通过./configure --list-encoders 和 ./configure --list-decoders 命令可以看到&#xff0c;ffmpeg只支持mp3解码&#xff0c;但是不支持mp3编码。 上网查寻后发现&…

lock_icon_container LockIconContainer的显示

LockIconContainer 是直接在super_notification_shade.xml 里面的&#xff1a; lock_icon_container <?xml version"1.0" encoding"utf-8"?> <!-- This is the notification shade window. --> <com.android.systemui.statusbar.phone.…

预训练模型基础:bpe_simple_vocab_16e6.txt 语料库,BPE 算法

预训练模型基础 bpe_simple_vocab_16e6.txtBPE bpe_simple_vocab_16e6.txt bpe_simple_vocab_16e6.txt.gz 文件是一个使用字节对编码&#xff08;Byte Pair Encoding&#xff0c;BPE&#xff09;算法生成的词汇表文件。文件内的单元是基于统计学上的频次自动生成的子词单元。如…

C++ :设计模式实现

文章目录 原则单一职责原则开闭原则依赖倒置原则接口隔离原则里氏替换原则 设计模式单例模式观察者模式策略模式代理模式 原则 单一职责原则 定义&#xff1a; 即一个类只负责一项职责 问题&#xff1a; 类 T 负责两个不同的职责&#xff1a;职责 P1&#xff0c;职责 P2。当…

Tomcat源码解析——一次请求的处理流程

在上一篇文章中&#xff0c;我们知道Tomcat在启动后&#xff0c;会在Connector中开启一个Acceptor(接收器)绑定线程然后用于监听socket的连接&#xff0c;那么当我们发出请求时&#xff0c;第一步也就是建立TCP连接&#xff0c;则会从Acceptor的run方法处进入。 Acceptor&…

使用CSS+HTML完成导航栏

HTML <!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8"> <meta name"viewport" content"widthdevice-width, initial-scale1.0"> <title>导航栏示例</title> &l…

07 内核开发-避免命名冲突经验技巧分享

07 内核开发-避免命名冲突经验技巧分享 目录 07 内核开发-避免命名冲突经验技巧分享 1.如何在内核开发过程中&#xff0c;避免命名冲突 2. 背景 3.避免方法 4.了解下 文件/proc/kallsyms 5.总结 课程简介&#xff1a; Linux内核开发入门是一门旨在帮助学习者从最基本的…

java-异常

一、异常的概念及分类 Exception&#xff1a;异常&#xff0c;代表程序可能出现的问题 Exception分为两类&#xff1a; 1、运行时异常&#xff1a;RuntimeException以及其子类&#xff0c;编译阶段不会出现异常提醒&#xff0c;在运行阶段会出现异常提醒 2、编译时异常&…

最全!2024百度Spring Zuul面试题大全,详解每个角落,面试必备宝典!收藏版!

随着微服务架构在现代软件开发中的广泛采用&#xff0c;了解和掌握如何通过服务网关管理和优化服务间的交互变得至关重要。Spring Zuul&#xff0c;作为Spring Cloud生态系统中的关键组件之一&#xff0c;提供了强大的路由、过滤和安全功能&#xff0c;帮助开发者在微服务架构中…

基于SpringBoot+Vue网上商城系统的设计与实现

系统介绍 随着社会的不断进步与发展&#xff0c;人们经济水平也不断的提高&#xff0c;于是对各行各业需求也越来越高。特别是从2019年新型冠状病毒爆发以来&#xff0c;利用计算机网络来处理各行业事务这一概念更深入人心&#xff0c;由于用户工作繁忙的原因&#xff0c;去商…