Spring+Quartz实现计划任务

本文介绍如何在Spring3.05环境下,使用Quartz1.8.6进行任务调度,并通过配置web.xml、applicationContext.xml、HelloWorld.java及HelloWorldImpl.java实现定时任务的执行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境:

1 Spring3.05

2 quartz 1.8.6 (由于Spring3.05与quartz 2.0不兼容,所以,还是选用quartz 1.8.6

3 eclipse 3.7

4 tomcat 7

5 jdk6

 

代码:

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
  <display-name>LeoWeb</display-name>
 <context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>/WEB-INF/applicationContext.xml</param-value>
 </context-param>
 <listener>
  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
 </listener>
</web-app>

 

applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
 <bean name="helloWorldService" class="com.leoweb.service.impl.HelloWorldImpl"></bean>
 <bean name="helloWorldJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
  <property name="targetObject" ref="helloWorldService" />
  <property name="targetMethod" value="sayHello" />
     <property name="concurrent" value="false" />
 </bean>
 <bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
  <property name="jobDetail" ref="helloWorldJob" />
  <property name="cronExpression" value="0/10 * * * * ?" />
 </bean>
 <bean id="scheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
  <property name="triggers">
   <list>
    <ref bean="cronTrigger" />
   </list>
  </property>
 </bean>
</beans>

 

HelloWorld.java

package com.leoweb.service;

public interface HelloWolrd {
 public void sayHello();
}

 

HelloWorldImpl.java

package com.leoweb.service.impl;

import com.leoweb.service.HelloWolrd;

public class HelloWorldImpl implements HelloWolrd {
 
 public HelloWorldImpl(){}

 @Override
 public void sayHello() {
  System.out.println("Hello World!");
 }

}

 

参考资料:

1 《Spring 2.0核心技术与最佳实践》,廖雪峰,电子工业出版社,2007年6月

2 《Spring Reference Documentation 3.0》

3 http://terracotta.org/downloads/open-source/destination?name=quartz-1.8.6.tar.gz&bucket=tcdistributions&file=quartz-1.8.6.tar.gz

4 http://topic.youkuaiyun.com/u/20120327/23/847ba00d-b7bc-48ec-aa0a-5a153194b392.html

5 http://www.iteye.com/problems/75479

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

tan_jianhui

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值