SpringBoot整合Quartz完成定时任务

  1. Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的程序。
  2. 我们在使用Quartz来创建定时任务是,只需要关注三点内容 : Job(任务),Trigger(触发器)和Scheduler(调度器)
    Job : 我们想要做的定时任务内容是什么。
      Trigger : 我们想在什么时间上执行job。
      Scheduler : 触发器生效 , 进行定时任务。

在SpringBoot中应用Quartz

  1. 在pom.xml中添加依赖
<dependencies>
        <!-- scheduled所属资源为spring-context-support,在Spring中对Quartz的支持,是集成在spring-context-support包中。org.springframework.scheduling.quartz -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context-support</artifactId>
        </dependency>
        <!-- Quartz坐标 -->
        <dependency>
            <groupId>org.quartz-scheduler</groupId>
            <artifactId>quartz</artifactId>
            <version>2.2.1</version>
            <!-- Quartz默认需要slf4j支持。springboot中,提供了更高版本的slf4j -->
            <exclusions>
                <exclusion>
                    <artifactId>slf4j-api</artifactId>
                    <groupId>org.slf4j</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <!-- Spring tx 坐标,quartz可以提供分布式定时任务环境。多个分布点上的Quartz任务,是通过数据库实现任务信息传递的.通过数据库中的数据,保证一个时间点上,只有一个分布环境执行定时任务-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-tx</artifactId>
        </dependency>
</dependencies>

2.在SpringBoot启动类使用@EnableScheduling注解

在这里插入图片描述
3. 编写自己的定时任务实现job
在这里插入图片描述
4. 编写定时任务配置类
在这里插入图片描述
5.重写JobFactory 实现将JobDetail对象加入到Spring容器中,让Spring容器管理,并自动装配逻辑。
在这里插入图片描述
6. 启动 测试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值