本文地址:http://blog.csdn.net/kongxx/article/details/6751326
在Quartz中除了使用最简单的Simple Trigger以外,也可以使用类似Linux上Cron作业的CronTrigger的方式来运行Job,下面是一个小例子:
1. 首先是一个任务类,这个类没有实现任何接口,其中包含一个run方法用来运行这个task,代码如下:
2. 一个Job类,这个类需要继承spring的QuartzJobBean类,来说明当前类是一个Quartz的Job类,类包含了一个Task类的对象实例,在每次Job被调度的时候,将会运行其中的executeInternal方法,代码如下:
3. Spring配置文件,内容如下
3.1 首先,需要定义了一个Task类,具体的任务逻辑可以写在这个类里;
3.2 定义一个JobDetailBean类的bean,这个是为了适应Quartz的JobDetail,其中可以定义name,group,description等信息,这些信息主要是为了和别的作业做区分使用;其中还有一个jobClass属性,定义了使用的是那个Job类实例,这里使用第二步创建的MyJob类;最后定义了一个叫jobDataAsMap的属性,这个属性是Quartz提供的用来传递参数使用的一个Map集合,这些集合里的类会被spring自动注入到目标Job类中;
3.3 创建一个触发器类,这里使用的是Quartz提供的Cron Trigger,在Spring里,使用的是CronTriggerBean来做映射,主要是定义cron表达式,具体可以参考quartz的官方文档,这里定义的是每隔10秒运行一次;当然还有最主要的具体的Job类实例;
3.4 最后定义了一个SchedulerFactoryBean的bean,其中定义了具体要调度那些触发器;
4. 最后,写一个测试类来测试上面的代码和配置
运行Test类,可以看到一个叫my task的job会启动,并且每隔10秒运行一次。
分享到:
相关推荐
Spring Task是Spring内置的轻量级任务调度器,而Quartz是更强大的第三方调度库,可以在Spring中集成使用。 1. **Spring Task** - **基本概念**:Spring Task是Spring框架的一部分,提供了基本的定时任务调度功能,...
Spring框架和Quartz是两个广泛使用的工具,它们可以协同工作以实现复杂和灵活的任务调度。本篇文章将深入探讨如何使用Spring与Quartz结合来创建一个任务调度的小例子。 首先,Spring是一个开源的Java企业级应用开发...
总结,Quartz的三种调度形式满足了不同场景下的定时任务需求,而与Spring的整合则进一步提升了其易用性和可维护性。了解并掌握这些知识,对于开发Java后台服务,特别是涉及到定时任务处理的项目,有着重要的实践价值...
Spring框架是Java领域最流行的应用框架之一,而Quartz则是广受欢迎的定时任务调度库。"定时框架spring+quartz"的结合,就是将Quartz的定时功能与Spring的强大集成能力完美融合,为开发者提供了一种高效、灵活的定时...
使用 `org.springframework.scheduling.quartz.SchedulerFactoryBean` 连接 Quartz Scheduler,并将 Job 和 Trigger 绑定,完成任务的调度。SchedulerFactoryBean 还负责管理 Scheduler 的生命周期,如启动、关闭等...
本篇将深入探讨如何利用Spring进行任务调度,并结合代码演示和Quartz库的使用来丰富这一主题。 首先,Spring提供了两种主要的任务调度机制:Spring内置的`TaskExecution`和`TaskScheduling`以及与Quartz Scheduler...
Trigger可以通过`org.springframework.scheduling.quartz.CronTriggerBean`或`SimpleTriggerBean`来创建,前者基于Cron表达式定义触发时间,后者则基于间隔时间和重复次数。 在代码实现中,你需要创建一个实现了`...
本篇文章将详细探讨Spring中的两种常见任务调度工具:`TimerTask`和`Quartz`,以及如何配置`cronExpression`来精确控制任务的执行时间。 首先,我们来了解`TimerTask`。`TimerTask`是Java内置的定时任务类,它继承...
然而,`Spring Timer`的功能相对有限,对于复杂的需求,如更精细的调度策略(如cron表达式)、集群环境下的任务分发等,`Quartz Scheduler`则更为强大。 `Quartz Scheduler`是一个开源的作业调度框架,支持复杂的...
然后,定义Job类并实现`org.quartz.Job`接口,以及触发器(Trigger)来指定何时执行任务。例如: ```java public class MyJob implements Job { @Override public void execute(JobExecutionContext context) { ...
除了内置的`TaskScheduler`,Spring还支持集成第三方任务调度库,如Quartz。Quartz是一个强大且功能丰富的作业调度框架,允许创建复杂的调度规则。在描述中提到的`quartz-all-1.6.1.jar`是Quartz库的旧版本,可能...
在IT行业中,定时任务调度是应用系统中常见且重要的功能之一,它允许程序在特定时间执行特定的任务。Spring框架作为Java领域广泛使用的轻量级框架,提供了与第三方库Quartz的整合,使得开发者能够轻松地在Spring应用...
Spring框架作为一个全面的企业级应用开发解决方案,提供了强大的任务调度支持,而Quartz则是一个流行的开源作业调度库,能够与Spring很好地集成。现在,我们就来深入探讨"spring quartz 任务调度"这一主题。 首先,...
Quartz是Java领域一个强大的、开源的作业调度框架,它允许开发者灵活地定义任务和调度策略。这篇博客将探讨如何在Spring中集成Quartz来实现定时任务。 首先,我们需要引入Quartz的依赖。在Maven的pom.xml文件中,...
总的来说,Spring任务调度实例提供了实践Quartz和Timer的机会,这对于学习和掌握Spring框架的高级特性和任务调度机制非常有价值。通过学习这个实例,开发者不仅可以提升自己的技能,还能了解到如何在实际项目中选择...
标题“Spring quartz任务调度”指的是在Java开发中利用Spring框架集成Quartz库来实现应用程序的任务调度功能。Quartz是一款开源的作业调度框架,它允许开发者安排任务在特定时间执行,而Spring框架则提供了与Quartz...
Spring Quartz 是一个强大的开源任务调度框架,它允许开发者在Java应用程序中定义和执行定时任务。在Spring框架中集成Quartz,可以充分利用Spring的IoC(Inversion of Control)和AOP(Aspect Oriented Programming...
在IT行业中,Spring框架是Java开发中的重要组成部分,它提供了丰富的功能,其中之一就是任务调度。本篇文章将深入探讨Spring任务调度的实现方法,以及如何利用Quartz库来增强任务管理能力。 首先,让我们理解Spring...
在Spring框架中,Quartz是一个强大的任务调度库,可以用于执行定时任务。本文将深入探讨如何在Spring中配置Quartz以实现多个定时任务。 首先,我们需要理解Quartz的基本概念。Quartz是一个开源的工作调度框架,它...
在IT行业中,Spring框架是Java领域最常用的轻量级应用框架之一,而Spring的定时调度功能则为企业级应用提供了强大的任务调度能力。本篇将详细探讨Spring如何集成Quartz库来实现定时任务,以及Quartz的基本概念、核心...