spring quartz实现定时,循环任务 --- 2016-09-26

本文介绍了如何在Spring中使用Quartz框架配置定时任务,包括Quartz的基本概念:调度器、任务和触发器,以及如何通过SimpleTrigger和CronTrigger设定时间规则。此外,还探讨了Cron表达式的用法,提供了多个实例来说明如何设置不同的调度方案。最后提到了动态配置定时任务的场景及其重要性。
摘要由CSDN通过智能技术生成

 

Spring+Quartz配置定时任务

 

一、Quartz介绍

  在企业应用中,我们经常会碰到时间任务调度的需求,比如每天凌晨生成前天报表,每小时生成一次汇总数据等等。Quartz是出了名的任务调度框架,它可以与J2SE和J2EE应用程序相结合,功能灰常强大,轻轻松松就能与Spring集成,使用方便。

二、Quartz中的概念

  主要有三个核心概念:调度器、任务和触发器。三者关系简单来说就是,调度器负责调度各个任务,到了某个时刻或者过了一定时间,触发器触动了,特定任务便启动执行。概念相对应的类和接口有:

  1)JobDetail:望文生义就是描述任务的相关情况;

  2)Trigger:描述出发Job执行的时间触发规则。有SimpleTrigger和CronTrigger两个子类代表两种方式,一种是每隔多少分钟小时执行,则用SimpleTrigger;另一种是日历相关的重复时间间隔,如每天凌晨,每周星期一运行的话,通过Cron表达式便可定义出复杂的调度方案。

  3)Scheduler:代表一个Quartz的独立运行容器,Trigger和JobDetail要注册到Scheduler中才会生效,也就是让调度器知道有哪些触发器和任务,才能进行按规则进行调度任务。

三、Spring中使用Quartz

  1,所需jar包:quartz.jar,spring-context-support.jar,commons-collections-3.2.jar;

  2,添加业务逻辑类(简单示例):

public class QuartzTest {

    //到了某个时刻就会被调用
    public void autoRun(){
        System.out.println("It's time to run :" + new Date().toString());
        //TODO 执行任务逻辑
        //........
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值