利用quartz定时执行某程序

我们做一个关于quartz的简单例子:定时像控制台打印输出语句

程序结构如下:


[img]http://dl2.iteye.com/upload/attachment/0088/6023/c906d86b-4130-3673-8ccd-a1924b2b4e0b.jpg[/img]


web.xml文件内容如下:

<?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">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

<!--直接配置 Quartz调度器 -->
<servlet>
<servlet-name>QuartzInitializer</servlet-name>
<servlet-class>org.quartz.ee.servlet.QuartzInitializerServlet</servlet-class>
<init-param>
<param-name>shutdown-on-unload</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>config-file</param-name>
<param-value>quartz.properties</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
</web-app>




quartz.properties文件内容如下:

#============================================================================
# Configure Main Scheduler Properties
#============================================================================
org.quartz.scheduler.instanceName = org.quartz.scheduler.instanceId = AUTO
#============================================================================
# Configure ThreadPool
#============================================================================
org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount = 3
org.quartz.threadPool.threadPriority = 5
#============================================================================
# Configure Plugins
#============================================================================
org.quartz.plugin.triggHistory.class = org.quartz.plugins.history.LoggingJobHistoryPlugin
org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.JobInitializationPlugin
org.quartz.plugin.jobInitializer.fileName = quartz_jobs.xml
org.quartz.plugin.jobInitializer.overWriteExistingJobs = true
org.quartz.plugin.jobInitializer.failOnFileNotFound = true
org.quartz.plugin.jobInitializer.scanInterval = 10



quartz_jobs.xml文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<quartz>
<job>
<job-detail>
<name>helloWordTask</name>
<group>DEFAULT</group>
<description>测试任务</description>
<job-class>com.yeshun.jobs.HelloWordTask_1</job-class>
<job-data-map allows-transient-data="true">
<entry>
<key>ilisKe</key>
<value>ilisV</value>
</entry>
</job-data-map>
</job-detail>
<trigger>
<cron>
<name>helloWordTaskCr</name>
<group>DEFAULT</group>
<job-name>helloWordTaskJb</job-name>
<job-group>DEFALUT</job-group>
<cron-expression>0/10 * * * * ?</cron-expression>
<!-- 每十秒中执行一次 DEFAULT组中指定的程序-->
</cron>
</trigger>
</job>

</quartz>



HelloWorldTask_1.java代码如下:

package com.yeshun.jobs;

import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.quartz.StatefulJob;

public class HelloWordTask_1 implements StatefulJob {

public void execute(JobExecutionContext jbcontext) throws JobExecutionException {

for(int i=0;i<10;i++){
System.out.print( "i = "+i +",");
}
System.out.println();
}

}



将项目quartz部署到服务器上即可。
运行结果如下:

[img]http://dl2.iteye.com/upload/attachment/0088/6025/572dc811-e598-3e4e-94aa-0085702ae17c.jpg[/img]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值