本文地址:http://blog.csdn.net/kongxx/article/details/6751300
在spring中对任务调度的集成除了使用JDK自带的Timer和TimerTask类来实现简单任务调度以外,也可以使用企业级的开源作业调度框架Quartz来实现,下面是一个小例子:
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提供的Simple Trigger,在Spring里,使用的是SimpleTriggerBean来做映射,主要是定义了第一次运行的延时时间,每次重复执行之间的间隔,当然还有最主要的具体的Job类实例;
3.4 最后定义了一个SchedulerFactoryBean的bean,其中定义了具体要调度那些触发器;
4. 最后,写一个测试类来测试上面的代码和配置
运行Test类,可以看到一个叫my task的job会启动,并且每隔10秒运行一次。
分享到:
相关推荐
Quartz提供了多种类型的触发器,包括简单触发器(Simple Trigger)、日历间隔触发器(Calendar Interval Trigger)和Cron表达式触发器(Cron Trigger),以满足不同的调度需求。 #### 三、整体调度模型 Quartz的...
Spring 集成 Quartz 的目的是为了利用Quartz的调度能力,使应用可以按需执行定时任务。以下是一些关键的知识点: 1. **Spring与Quartz的整合**:Spring 提供了对Quartz的集成支持,通过`org.springframework....
Quartz的Spring Boot Starter可以简化配置,使得任务调度变得更加简单。你需要引入如下的Maven依赖: ```xml <groupId>org.springframework.boot <artifactId>spring-boot-starter-quartz ``` 接下来,配置...
Spring Quartz是一个强大的任务调度框架,它允许开发人员在Java应用程序中安排复杂的任务执行。Quartz是开源的,可扩展的,且与Spring框架完美集成,为应用提供了灵活且可靠的定时任务管理能力。在这个"spring-...
Quartz是Java平台上的一个强大、完全可移植的作业调度库,可以用来创建复杂的调度任务,而Spring则是一个广泛使用的应用框架,提供了依赖注入、AOP(面向切面编程)等功能,将两者结合可以实现灵活的定时任务调度。...
标题“Spring-Quartz”指的是将Spring框架与Quartz任务调度库结合使用的主题。Quartz是一个开源的作业调度框架,可以用于创建、管理和执行计划任务。Spring框架则为Java应用程序提供了一个全面的基础设施,包括依赖...
Quartz是一款开源的作业调度框架,它允许开发者创建、组织和执行定时任务。在Java世界里,Quartz是广泛使用的任务调度库,尤其适合企业级应用。本篇将通过一个简单的Quartz任务调度实例,来深入理解其核心概念和用法...
Spring Quartz 是一个强大的任务调度框架,它允许开发者在Spring应用中轻松地添加定时任务。这个框架结合了Spring的灵活性和Quartz的定时功能,使得在Java应用中管理定时任务变得非常简单。以下是对Spring Quartz所...
Quartz和Spring是两个在Java开发中非常重要的框架,它们结合使用可以实现强大的任务调度功能。Quartz是一个开源的工作调度库,它允许开发者创建、调度和管理后台任务,而Spring框架则是一个全方位的应用开发框架,...
Quartz是一款开源的作业调度框架,它允许在Java应用程序中创建和管理定时任务。这个"Quartz定时任务简单列子"可能是一个简单的教程或者示例项目,用于展示如何在Java应用中集成和使用Quartz来执行预定的任务。 ...
在Spring中,可以借助Quartz库来实现定时任务的调度。 Quartz是一个开源的作业调度框架,能够用于创建、调度、执行和监控重复的作业。在Spring与Quartz结合使用时,通常需要引入几个关键的jar包来支持其功能。根据...
标题 "Spring + quartz" 暗示了我们讨论的主题是关于如何在Java应用程序中结合Spring框架与Quartz库来实现任务调度。Quartz是一个开源的作业调度框架,它允许开发者安排任务在特定时间执行,而Spring框架则为Java...
Quartz是Java平台上的一个开源作业调度框架,它允许开发者安排任务执行,而Spring Boot则是一个简化Spring应用开发的框架。这个压缩包很可能是为了展示如何在Spring Boot应用中配置和使用Quartz来实现定时任务。 ...
Quartz是一款开源的作业调度框架,它允许程序在指定的时间执行特定的任务,是Java平台上的一个强大、可扩展的工作调度库。Quartz的核心功能在于它的Job接口和Trigger接口,Job代表了要执行的任务,而Trigger则定义了...
需要实现Quartz的`org.quartz.Job`接口或者继承`org.springframework.scheduling.quartz.StatefulJob`(如果需要保持任务状态)或`org.springframework.scheduling.quartz.SimpleJob`(如果任务是无状态的)。...
在Java领域,Scheduled和Quartz是两个非常流行的框架,用于实现定时任务的管理和调度。Scheduled是Java自带的一个定时任务调度框架,而Quartz是一个功能更为强大的开源作业调度系统。本文将探讨如何使用这两个框架来...
Quartz是一个开源的作业调度框架,它允许程序在指定的时间执行特定的任务,是Java平台上的一个强大、可扩展且易用的作业调度库。在这个最简单的Quartz例子中,我们将探讨如何设置和运行一个基本的定时任务。 首先,...
Spring 也包含了一个任务调度模块,但当与 Quartz 结合使用时,可以利用 Quartz 更强大的调度能力。Spring 的上下文可以用来初始化和管理 Quartz 的 Scheduler 实例,使得在 Spring 应用程序中配置和控制作业变得...
在本文中,我们将深入探讨如何在Spring Boot项目中集成并使用Quartz Scheduler,这是一个功能强大的开源任务调度框架,用于在Java应用程序中安排重复性任务。Spring Boot简化了配置过程,使得与Quartz的结合变得更加...
Spring提供了对Quartz的全面支持,包括声明式任务调度和编程式任务调度,使得在Spring应用中使用Quartz变得简单易行。 总的来说,"Quartz定时器,表达式自动生成工具"是Quartz定时器的有益补充,它降低了学习和使用...