`
Chris_2012
  • 浏览: 16575 次
  • 性别: Icon_minigender_2
最近访客 更多访客>>
社区版块
存档分类

一个简单的Quartz任务调度例子

阅读更多

       Quartz是由java编写的开源作业调度框架,其核心就是调度器。Quartz的实现非常简单,创建一个实现org.quartz.Job接口的java类。这个接口包含唯一的方法:

public void execute(JobExecutionContext context)
throws JobExecutionException;
在自己的实现类里面,添加一些处理逻辑到execute()方法。一旦你配置好Job实现类并设定好调度时间表,Quartz就可以在指定的时间执行相应的动作。
     这里我们用一个简单地例子初步了解Quartz,我们要实现一个定时发送邮件的功能,这个逻辑用Quartz来处理非常的简单。首先我们需要建一个JOB类,这个类的逻辑是当到达指定的时间的时候就发送邮件。这样的逻辑应该很简单这里就不具体说明了。接下来我们要做的就是用Quartz任务调度来执行这个类,我们可以设置调度时间例如每隔一分钟去扫描一次,一旦符合JOB类中的情况就会做出相应的动作,达到定时发送邮件的效果。
       本文主要是利用Spring来集成Quartz。我们只需要在Spring中配置相应的Trigger和Job,Spring在找到这些bean后会自动启动这些Job。下面是一些配置信息:
<!-- 要调用的工作类 class中的类即为我们刚刚建的JOB类 -->
        <bean id="quartzJob" class="com.job.quartz.QuartzJob">
        	<property name="sqlMap" ref="sqlMapClient" />
        </bean>
 
  <!-- 定义调用对象和调用对象的方法 -->
        <bean id="jobtask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
            <!-- 调用的类 -->
            <property name="targetObject">
                <ref bean="quartzJob"/>
            </property>
            <!-- 调用类中的方法 -->
            <property name="targetMethod">
                <value>exec</value>
            </property>
        </bean>
        <!--定义执行的时间  它定义了quartzJob何时被调用。 -->
        <bean id="doTime" class="org.springframework.scheduling.quartz.CronTriggerBean">
            <property name="jobDetail">
                <ref bean="jobtask"/>
            </property>
            <!-- 时间的表达式 -->
            <property name="cronExpression">
                <value>0 0 12 * * ?value>
            </property>
        </bean>
        <!--  如果将lazy-init='false'   那么容器在启动的时候就会执行调度程序  -->
        <bean id="startQuartz" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"  lazy-init="false">
            <property name="triggers">
                <list>
                    <ref bean="doTime"/>
                </list>
            </property>
        </bean>	
              通过以上的配置再加上我们的JOB类就可以利用Quartz轻松的实现定时发送邮件的效果了!
分享到:
评论

相关推荐

    Spring+Quartz实现任务调度的小例子

    本篇文章将深入探讨如何使用Spring与Quartz结合来创建一个任务调度的小例子。 首先,Spring是一个开源的Java企业级应用开发框架,它提供了丰富的功能,包括依赖注入、数据访问、事务管理等。而Quartz则是一个强大的...

    简单的Quartz任务调度例子

    本篇将通过一个简单的Quartz任务调度实例,来深入理解其核心概念和用法。 首先,我们需要了解Quartz的主要组件: 1. **Job**:工作接口,代表一个具体的任务,实现`org.quartz.Job`接口,定义了`execute...

    quartzDemo任务调度例子

    在"quartzDemo任务调度例子"中,我们将探讨如何利用Quartz实现Java应用程序中的定时任务。 1. **Quartz简介** Quartz是Cron-like和Calendar-based任务调度库,用于在Java应用程序中安排和管理作业。它提供了丰富的...

    quartz 任务调度可运行例子

    总的来说,这个 Quartz 任务调度的运行示例为你提供了一个动手实践的机会,加深对 Quartz 工作原理的理解。通过学习和应用这个示例,你将能够自如地在 Java 应用程序中实现复杂的定时任务调度。

    Quartz任务调度管理

    ### Quartz任务调度管理 #### 一、任务调度基础概念 任务调度是指系统按照预先设定的时间规则来自动执行特定任务的功能。这种机制广泛应用于各种场景,例如数据备份、定期检查资源状态、发送邮件通知等。 ##### ...

    Java中使用Quartz实现任务自动调度的经典例子!

    接下来,我们来看看如何在Java中实现一个简单的任务调度: 1. **定义Job**:创建一个新的Java类,实现`Job`接口,例如: ```java public class MyJob implements Job { @Override public void execute...

    一个最简单的定时任务Quartz的例子

    在这个最简单的Quartz例子中,我们将探讨如何设置和运行一个基本的定时任务。 首先,我们需要了解Quartz的核心组件:Job和Trigger。Job是实际执行的工作单元,而Trigger则是触发Job执行的时间规则。在Quartz中,...

    Spring下使用Quartz任务调度

    这篇博客“Spring下使用Quartz任务调度”将深入探讨如何在Spring环境中集成并使用Quartz进行任务管理。 Quartz是一个开源的作业调度框架,它可以被用来创建、调度和执行任务,支持复杂的调度策略。其核心特性包括可...

    一个java Quartz的小例子

    Java Quartz 是一个强大的开源作业调度框架,用于在Java应用程序中创建和管理计划任务。它允许开发者精确地安排任务执行,可以按需重复、延迟或在特定时间触发。在这个小例子中,我们将深入理解如何使用Java Quartz...

    spring 任务调度实现代码例子

    这个“spring 任务调度实现代码例子”很可能是包含了一些示例代码,用于演示如何在Spring应用中配置和使用任务调度。下面将详细解释Spring任务调度的关键概念和实现方法。 1. **Spring Task模块** Spring Task是...

    Quartz(任务调度)使用培训

    标题和描述中提到的主题是关于Quartz任务调度系统的使用培训。Quartz是一个开源的任务调度库,其主要用途是让开发者能够轻松地安排在特定时间或根据特定规则运行代码的任务,也就是作业(Jobs)。Quartz能够与Java...

    作业调度Quartz小例子

    Quartz 是一个高度可扩展和灵活的开源作业调度框架,主要设计用于在 Java 应用程序中实现定时任务的调度。它的核心功能是基于时间触发器执行预先定义的任务,这使得开发者可以设置作业在特定时间点或者按照周期性...

    Quartz任务调度在web中的简单使用

    Quartz任务调度是一种广泛应用于Java Web开发中的开源作业调度框架,它允许开发者定义和执行复杂的任务调度策略。本文将深入探讨如何在Web环境中简单使用Quartz,并基于提供的QuartzDemo示例进行解析。 首先,...

    Spring Quartz 调度器的使用,定时任务[含例子]

    Spring Quartz 是一个强大的开源任务调度框架,用于在Java应用程序中执行定时任务。它与Spring框架无缝集成,使得在Spring应用中配置和管理定时任务变得非常简单。Quartz 的设计允许开发者灵活地创建、管理和执行...

    QuartZ定时任务例子

    - **Job**:QuartZ中的核心组件,代表一个可执行的任务。 - **Trigger**:触发器,定义了何时执行Job。 - **Scheduler**:调度器,负责管理所有的Job和Trigger,以及它们的执行。 2. **时间表达式(Cron ...

    Quartz--JAVA定时任务\Java应用:Java调度任务和Spring Quartz (1)

    以下是一个使用Quartz的例子: 首先,我们需要创建一个Job类,例如`DailySay`,这个类会执行我们定义的任务。这里使用了Spring的`QuartzJobBean`,因为它提供了与Spring容器集成的能力,可以注入其他依赖: ```...

    Quartz作业调度框架

    在Quartz中,一个简单的“Hello,World”例子可以帮助新手用户快速上手。用户通过调度QuartzScanDirectoryJob等示例作业来掌握Quartz作业调度的基本概念。通过声明式部署Job,Quartz支持更加灵活的作业调度方式。 ...

    详解.NET Core使用Quartz执行调度任务进阶

    Quartz.Net是一个功能丰富的开源任务调度框架,适用于多种.NET环境,包括.NET Core。本文将深入探讨如何在.NET Core 2.2及以上版本中利用Quartz进行高级任务调度。 一、Quartz.Net简介 Quartz.Net提供了强大的定时...

    Quartz一个开源作业调度框架

    下面是一个简单的 Quartz 使用示例: 首先,定义一个实现 `Job` 接口的类,如 `HelloJob`,它会在执行时输出 "Hello World!": ```java import org.quartz.Job; import org.quartz.JobExecutionContext; import ...

    spring timer、quartz俩种任务调度

    `Spring Timer`是Spring框架提供的一个简单任务调度工具,它基于Java的`java.util.Timer`类。通过`@Scheduled`注解,开发者可以在Spring应用上下文中声明一个方法为定时任务。例如: ```java import org.spring...

Global site tag (gtag.js) - Google Analytics