quartz

来源:互联网 发布:雪纺衫淘宝好评 编辑:程序博客网 时间:2024/06/17 03:10

一个定时执行的job

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
packagedk.spring.quartz;
 
importjava.util.Date;
 
importorg.quartz.JobExecutionContext;
importorg.quartz.JobExecutionException;
importorg.springframework.scheduling.quartz.QuartzJobBean;
 
/**
 * 使用spring集成的quartz调度
 */
publicclass QuartzTestJob extendsQuartzJobBean {
 
    /**
     * 执行任务
     */
    protectedvoid executeInternal(JobExecutionContext arg0)
            throwsJobExecutionException {
        System.out.println("QuartzTestJob start:"+newDate());
    }
}



一个定时调度的配置schedules.xml

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?xmlversion="1.0"?>
<beansxmlns="http://www.springframework.org/schema/beans" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:context="http://www.springframework.org/schema/context"  
 xmlns:jee="http://www.springframework.org/schema/jee" 
 xsi:schemaLocation="
 http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
 http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd
 http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd"
 >
 
    <!-- 任务明细bean,对quartz任务包装 -->
    <beanid="jobDetailBean"class="org.springframework.scheduling.quartz.JobDetailBean">
        <propertyname="jobClass"   value="dk.spring.quartz.QuartzTestJob"/>
    </bean>
 
    <!-- cron触发器bean,设置任务的调度策略的 -->
    <beanid="cronTriggerBean"class="org.springframework.scheduling.quartz.CronTriggerBean">
        <propertyname="jobDetail"ref="jobDetailBean"/>
        <!-- cron表达式 -->
        <propertyname="cronExpression">
            <value>0/5 * * * * ?</value>
        </property>
    </bean>
 
    <!-- 调度器工厂bean,激活触发器,启动quartz任务的 -->
    <beanclass="org.springframework.scheduling.quartz.SchedulerFactoryBean">
        <propertyname="triggers">
            <refbean="cronTriggerBean"/>
        </property>
    </bean>
</beans>



web.xml要记得加载schedules.xml

?
1
2
3
4
5
6
<context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
            classpath*:/applicationContext.xml;classpath:schedules.xml
        </param-value>
</context-param>



运行web工程结果如下:

QuartzTestJob start:Sun Sep 21 16:15:15 CST 2014
QuartzTestJob start:Sun Sep 21 16:15:20 CST 2014
QuartzTestJob start:Sun Sep 21 16:15:25 CST 2014

0 0