第一步:下载quartz-2.1.5,解压压缩包
在下面附近中有rar格式的压缩包
第二步:创建web项目,导入jar包。在此示例中,仅导入相关的jar包。包括lib下面所有jar包,quartz-all-2.1.5.jar包。若出现 严重: StandardWrapper.Throwablejava.lang.NoClassDefFoundError:javax/transaction/UserTransaction错误提示,还需导入jta.jar包
第三步:创建作业程序
package com.test; import org.quartz.Job; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class DemoJob implements Job { static Logger logger = LoggerFactory.getLogger(DemoJob.class); public void execute(JobExecutionContext context) throws JobExecutionException { // TODO Auto-generated method stub logger.info("===============作业中!==================="); } }
第四步:导入配置文件
配置文件有log4j.xml,quartz.properties,jobs.xml。其中log4l.xml在quartz2.1.5\examples\example1目录下,quartz.properties和jobs.xml都得自己编写,也可以去网上查找模版。以下是几个配置文件的简单示例:
log4j.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <appender name="default" class="org.apache.log4j.ConsoleAppender"> <param name="target" value="System.out"/> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="[%p] %d{dd MMM hh:mm:ss.SSS aa} %t [%c]%n%m%n%n"/> </layout> </appender> <logger name="org.quartz"> <level value="info" /> </logger> <root> <level value="info" /> <appender-ref ref="default" /> </root> </log4j:configuration>
quartz.properties
扫描二维码关注公众号,回复:
830416 查看本文章
#=============================================================== #Configure Main Scheduler Properties #=============================================================== org.quartz.scheduler.instanceName = QuartzScheduler org.quartz.scheduler.instanceId = AUTO #=============================================================== #Configure ThreadPool #=============================================================== org.quartz.threadPool.threadCount = 5 org.quartz.threadPool.threadPriority = 5 org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool #=============================================================== #Configure JobStore #=============================================================== #=============================================================== #Configure Plugins #=============================================================== org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin org.quartz.plugin.jobInitializer.fileNames =jobs.xml org.quartz.plugin.jobInitializer.failOnFileNotFound =true
jobs.xml
<?xml version="1.0" encoding="UTF-8"?> <job-scheduling-data xmlns="http://www.quartz-scheduler.org/xml/JobSchedulingData" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.quartz-scheduler.org/xml/JobSchedulingData http://www.quartz-scheduler.org/xml/job_scheduling_data_1_8.xsd" version="1.8"> <schedule> <job> <name>DemoJob</name> <group>DEFAULT</group> <description>A job just for test</description> <job-class>com.test.DemoJob</job-class> </job> <trigger> <simple> <name>HeiTrigger</name> <group>DEFAULT</group> <job-name>DemoJob</job-name> <job-group>DEFAULT</job-group> <repeat-count>-1</repeat-count> <repeat-interval>10000</repeat-interval> </simple> <!-- <cron> <name>Trigger</name> <group>DEFAULT</group> <job-name>DemoJob</job-name> <job-group>DEFAULT</job-group> <cron-expression>0 11 17 * * ?</cron-expression> </cron> --> </trigger> </schedule> </job-scheduling-data>
第五步:配置web.xml
加入一个servlet.如下所示;
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <servlet> <servlet-name>QuartzInitializer</servlet-name> <servlet-class> org.quartz.ee.servlet.QuartzInitializerServlet </servlet-class> <init-param> <param-name>config-file</param-name> <param-value>quartz.properties</param-value> </init-param> <init-param> <param-name>shutdown-on-unload</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>start-scheduler-on-load</param-name> <param-value>true</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
第六步:启动tomcat服务器,Ok。