关于Spring中的定时器配置

本文介绍了Spring中的定时任务配置,包括Timer、Quartz和Spring Task的比较。重点讲述了Spring Task的配置步骤,以及四种定时任务机制:Cron表达式、fixedDelay、fixedRate和initialDelay。此外,还提到了在项目集群中的定时任务配置策略。
摘要由CSDN通过智能技术生成

讲这个之前,我们先讲讲定时器。
从实现技术上来看,定时器分为三种:

1.Timer比较单一,这个类允许你调度一个java.util.TimerTask任务。使用这种方式可以让你的程序按照某一个频度执行,但不能在指定时间运行,一般用的较少。
2.Quartz是一个功能比较强大的的调度器,可以让你的程序在指定时间执行,也可以按照某一个频度执行,配置起来有些复杂。
3.Spring3.0以后自带的task,可以将它看成一个轻量级的Quartz,而且使用起来比Quartz简单许多。

从作业类继承分类主要分为两类:

1.作业类需要继承自特定的作业类基类,如Quartz中需要继承自org.springframework.scheduling.quartz.QuartzJobBean;java.util.Timer中需要继承自java.util.TimerTask。
2.作业类即普通的java类,不需要继承自任何基类。

从任务调度的触发机制来分,主要有以下两种:

1.每隔指定时间则触发一次,在Quartz中对应的触发器为:org.springframework.scheduling.quartz.SimpleTriggerBean
2.每到指定时间则触发一次,在Quartz中对应的调度器为:org.springframework.scheduling.quartz.CronTriggerBean

现在,我们讲讲Spring3.0的task,<task:annotation-driven/>的作用就是开启定时器开关,自动扫描程序中带注解的定时器,不过,要让他起作用还需要以下配置:

首先在配置文件头部的必须要有:

xmlns:task="http://www.springframework.org/schema/task"

其次xsi:schemaLocation必须为其添加:

xsi:schemaLocation=" http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd"

然后spring扫描过程必须涵盖定时任务类所在的目录:

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值