`
whj0427
  • 浏览: 38348 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

让你的Quartz自已跑起来

阅读更多
在Tomcat 6.0.10 + Quartz 1.6.0 环境

1、下载Quartz 1.6.0,把解压后目录中的.jar及lib/coret和lib/optional中的.jar拷贝到h项目lib中,同时lib/build/jta.jar也是需要的。

2、在项目的web.xml中加入
<servlet>
	<servlet-name>QuartzInitializer</servlet-name>
	<display-name>Quartz Initializer Servlet</display-name>
	<servlet-class>org.quartz.ee.servlet.QuartzInitializerServlet</servlet-class>
	<load-on-startup>1</load-on-startup>
  </servlet>


3、在WEB-INF/classes中建以后两个文件:
quartz_reminder.xml:
<?xml version="1.0" encoding="UTF-8"?>
<quartz> 
  <job>
    <job-detail>
      <name>Job_DataTransmit</name>
      <group>DEFAULT</group>
      <job-class>scheduling.QuartzStart</job-class>
    </job-detail>
    <trigger>
      <cron>
        <name>Trigger_DataTransmit</name>
        <group>DEFAULT</group>
        <job-name>Job_DataTransmit</job-name>
        <job-group>DEFAULT</job-group>
        <cron-expression> 0 0/5 * * * ? </cron-expression>
     </cron>
    </trigger>
  </job> 
</quartz>

quartz.properties:
# ===========================================================================
# Configure Main Scheduler Properties
# ===========================================================================

org.quartz.scheduler.instanceName = DataTransmit
org.quartz.scheduler.instanceId = AOTO

# ===========================================================================
# Configure ThreadPool 
# ===========================================================================

org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount = 5
org.quartz.threadPool.threadPriority = 4

# ===========================================================================
# Configure JobStore 
# ===========================================================================

org.quartz.jobStore.misfireThreshold = 5000
org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore

# ===========================================================================
# Configure SchedulerPlugins ===============================================
# ===========================================================================

org.quartz.plugin.triggHistory.class =org.quartz.plugins.history.LoggingTriggerHistoryPlugin
org.quartz.plugin.triggHistory.triggerFiredMessage = Trigger{1}.{0}firedjob{6}.{5}at:{4,date,HH:mm:ssMM/dd/yyyy}
org.quartz.plugin.triggHistory.triggerCompleteMessage = Trigger{1}.{0}completedfiringjob{6}.{5}at{4,date,HH:mm:ssMM/dd/yyyy}withresultingtriggerinstructioncode:{9}
org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.JobInitializationPlugin
org.quartz.plugin.jobInitializer.fileName =/quartz_reminder.xml
org.quartz.plugin.jobInitializer.overWriteExistingJobs = false
org.quartz.plugin.jobInitializer.failOnFileNotFound = true
org.quartz.plugin.shutdownhook.class = org.quartz.plugins.management.ShutdownHookPlugin
org.quartz.plugin.shutdownhook.cleanShutdown = true

4、QuartzStart.java
package scheduling;

import java.util.Date;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;

public class QuartzStart implements Job {

    public QuartzStart() {
    }

    public void execute(JobExecutionContext cntxt) throws JobExecutionException {
        System.out.println(" 定时操作在 " + new Date() + "执行");
    }
}

5、Tomcat启动没有报错误信息,并会输出类似这样的信息
INFO : 2007-11-22 16:00:00,062: LoggingTriggerHistoryPlugin[line:387]: TriggerDE
FAULT.Trigger_DataTransmitfiredjobDEFAULT.Job_DataTransmitat:16:00:0011/22/2007
 定时操作在 Thu Nov 22 16:00:00 CST 2007执行
INFO : 2007-11-22 16:00:00,109: LoggingTriggerHistoryPlugin[line:433]: TriggerDE
FAULT.Trigger_DataTransmitcompletedfiringjobDEFAULT.Job_DataTransmitat16:00:0011
/22/2007withresultingtriggerinstructioncode:DO NOTHING
INFO : 2007-11-22 16:05:00,015: LoggingTriggerHistoryPlugin[line:387]: TriggerDE
FAULT.Trigger_DataTransmitfiredjobDEFAULT.Job_DataTransmitat:16:05:0011/22/2007
 定时操作在 Thu Nov 22 16:05:00 CST 2007执行

分享到:
评论
3 楼 dcyangyang 2010-05-25  
你好!能给我一些quartz web 应用的实例吗?我最近在写用其定时发邮件 ,传数据等功能,第一次接触.....谢谢
2 楼 whj0427 2008-08-11  
不好意思,我来晚了
<servlet>
......
</servlet>
这段代码是写在WEB-INFO中的web.xml中
我对Quartz的了解也比较浅,不知道你现在解决了没有?一起学习吧。
1 楼 yuyijia 2008-07-10  
你好,我按照你上面的步骤下来,在启动tomcat时没有打印出类似的日志信息,不知道是什么原因!

我有个疑问:
           <servlet>
                      ......
           </servlet>
    这段是加在我的web project下的webroot/WEB-INFO中的web.xml中,还是加在Tomcat x.x\conf\下的web.xml中?
     不过我两个都试过了?还是没有打印结果,所以想确认一下,谢谢!



我今天刚刚开始在自学这个quartz,请指点一下,谢谢!有什么好的学习资料吗?可以的话介绍一下,或者发我邮箱吧,hzunite@163.com,麻烦你了!

相关推荐

    quartz quartz-1.8.6 dbTables 建表sql

    Quartz 是一个开源的作业调度框架,广泛应用于Java应用程序中,用于执行定时任务。它提供了丰富的API和灵活性,使得开发者可以方便地定义、安排和管理各种任务。版本1.8.6是Quartz的一个稳定版本,它包含了对数据库...

    quartz-1.6.0.jar和quartz-all-1.6.0.jar

    Quartz是Java领域的一款强大的开源任务调度框架,它允许开发者创建和管理定时任务,从而实现应用程序的自动执行功能。在给定的压缩包文件中,我们有两个版本为1.6.0的Quartz JAR包:`quartz-1.6.0.jar`和`quartz-all...

    quartz创建表sql

    在Oracle环境下,你需要执行一系列的SQL语句来创建Quartz的表。这些表包括QRTZ_TRIGGERS、QRTZ_JOB_DETAILS、QRTZ_CALENDARS、QRTZ_CRON_TRIGGERS、QRTZ_BLOB_TRIGGERS、QRTZ_SIMPLE_TRIGGERS、QRTZ_SIMPROP_...

    Quartz 线程池

    Quartz 是一个开源的作业调度框架,它允许开发者在 Java 应用程序中安排任务的执行。线程池是 Quartz 的核心组成部分,用于管理和执行触发的任务。本文将深入探讨 Quartz 线程池的工作原理、配置以及如何在实际项目...

    quartz实例,quartz入门例子

    在MyEclipse 6.0.1环境下,你可以直接运行这个Spring整合Quartz的示例项目,以便深入学习Quartz的调度功能。 Quartz的核心概念包括: 1. **Job**:工作,它是实际要执行的任务,可以定义一个Java类实现`org.quartz....

    quartz-2.2.3版本的quartz初始化sql语句

    在使用Quartz 2.2.3时,开发者需要根据自己的数据库系统选择相应的SQL脚本,并在数据库中执行这些语句。这一步通常是通过配置Quartz的`SchedulerFactoryBean`在Spring框架中完成的,或者在程序启动时手动执行。 ...

    Quartz所需jar包

    2. `slf4j-api.jar`:Simple Logging Facade for Java,Quartz依赖于它来进行日志记录,你可以根据自己的日志系统选择对应的实现,比如`logback-classic.jar`或`log4j.jar`。 3. `common-jdbc.jar`(可能包含):...

    quartz和spring-quartz

    Quartz和Spring-Quartz是两个在Java世界...“spring-quartz-demo”可能是一个完整的示例项目,你可以通过运行它来深入理解Quartz在Spring中的应用。通过研究这些资源,你可以更全面地掌握Quartz和Spring-Quartz的用法。

    Android studio下的quartz工程

    在Android中,你需要创建一个实现了`org.quartz.Job`接口的类来定义你的任务。例如: ```java import org.quartz.Job; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; public ...

    Quartz 批量下载源码

    Quartz 批量下载源码,Quartz 批量下载源码Quartz 批量下载源码Quartz 批量下载源码Quartz 批量下载源码Quartz 批量下载源码Quartz 批量下载源码Quartz 批量下载源码Quartz 批量下载源码Quartz 批量下载源码

    quartz_2.3.0 SQL脚本

    Quartz 是一个开源的作业调度框架,广泛应用于Java应用程序中,用于执行定时任务。它允许开发者灵活地定义作业和触发器,实现复杂的时间调度。在2.3.0这个版本中,Quartz 提供了针对不同数据库系统的初始化脚本,...

    quartz.jar包下载

    Quartz的核心是基于Cron表达式的,它允许你以类似于Unix cron服务的方式安排任务。 在Java开发中,使用Quartz.jar的主要优点包括: 1. **灵活的调度**:Quartz提供了非常灵活的任务调度能力。你可以定义任务执行的...

    关于spring中quartz的配置

    在Spring框架中集成Quartz是一款常见的任务调度解决方案,它允许开发者在应用中...通过以上步骤,你就可以在Spring中成功配置并使用Quartz进行任务调度了。注意,实际应用中还需要根据具体需求调整配置和Job的实现。

    spring_quartz项目可以直接运行

    总的来说,"spring_quartz" 项目是一个很好的学习和实践 Spring Quartz 的起点,通过该项目,你可以了解如何在实际应用中配置和使用 Spring 集成 Quartz 来实现定时任务。同时,对于想要深入理解 Spring 和定时任务...

    Quartz.net-定时任务 Demo

    Quartz.NET是一款强大的开源作业调度框架,用于在.NET环境中创建和执行定时任务。...通过学习和实践这个"Quartz.net-定时任务 Demo",你将能够熟练地在自己的项目中使用Quartz.NET来创建和管理定时任务。

    quartz动态任务管理

    在Quartz中,你可以动态地添加、删除或修改作业和触发器,使得任务管理更具灵活性。例如,你可以创建一个作业来执行数据库备份,然后根据业务需求设置触发器在每天凌晨2点执行。如果需要调整备份时间,只需更新...

    quartz scheduler 入门教程

    如果你的应用有任务需要在给定时间执行,或者你的系统需要定期执行某些任务,那么 Quartz Scheduler 就是你的理想选择。例如: * 驱动工作流进程:当一个新订单生成后,指定一个计划任务在 2 小时后触发,该任务将...

    quartz实例

    通过学习和运行这个实例,你可以深入理解Quartz的工作原理,并将其应用到自己的项目中,实现定时任务的自动化调度。确保根据你的项目需求调整触发器和作业的设置,以及正确配置Quartz以适应你的环境。

    quartz实例sqlserver数据库连接

    2. **配置数据库连接**:在Quartz.NET的配置文件(通常是quartz.config或app.config)中,你需要指定数据库连接字符串。例如: ```xml &lt;add key="quartz.jobStore.connectionString" value="Data Source=...

    Quartz.NET 官方源码及演示例子

    Quartz.NET 是一个开源的作业调度框架,它允许开发者在.NET...通过以上步骤,你可以全面掌握Quartz.NET的使用和开发,不仅能够利用它为你的应用程序添加定时任务功能,还能深入了解其底层实现,提升你的.NET开发技能。

Global site tag (gtag.js) - Google Analytics