Java Blog for Alex Wan

Let life be beautiful like summer flowers and death like autumn leaves.

统计

留言簿(10)

BlogJava

Blogs

DIV+CSS

JQuery相关

友情链接

常去的地方

数据供应

阅读排行榜

评论排行榜

spring框架使用任务调度quartz的例子-Job and Trigger 篇

MainJob.java
 1package jobs;
 2
 3import org.apache.log4j.Logger;
 4import org.quartz.JobExecutionContext;
 5import org.quartz.JobExecutionException;
 6import org.springframework.scheduling.quartz.QuartzJobBean;
 7
 8public class MainJob extends QuartzJobBean {
 9    private  Logger logger = Logger.getLogger(getClass());
10    @Override
11    protected void executeInternal(JobExecutionContext context)
12            throws JobExecutionException {
13        // TODO Auto-generated method stub
14        logger.debug("Just say hi.");
15    }

16
17}

18
application.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"
    xmlns:jee
="http://www.springframework.org/schema/jee"
    xsi:schemaLocation
="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
           http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-2.0.xsd"
>
    
<!-- 任务调度对象 -->
    
<bean id="mainJob"
        class
="org.springframework.scheduling.quartz.JobDetailBean">
        
<!-- 运行的类 -->
        
<property name="jobClass">
            
<value>jobs.MainJob</value>
        
</property>
        
<!-- 需要用到的对象 -->
        
<property name="jobDataAsMap">
            
<map>
                
<entry key="data">
                    
<value>data</value>
                
</entry>
            
</map>
        
</property>
    
</bean>

    
<!-- 简单的触发器 -->
    
<bean id="mainTrigger"
        class
="org.springframework.scheduling.quartz.SimpleTriggerBean">
        
<property name="jobDetail">
            
<!-- 上面创建的任务调度对象 -->
            
<ref bean="mainJob" />
        
</property>
        
<!-- 启动60秒后执行任务调度的excute方法 -->
        
<property name="startDelay">
            
<value>6000</value>
        
</property>
        
<!-- 运行次数 -->
        
<property name="repeatCount">
            
<value>0</value>
        
</property>
        
<!-- 隔一个小时运行一次(貌似多余,不写会报错) -->
        
<property name="repeatInterval">
            
<value>3600000</value>
        
</property>
    
</bean>
    
        
    
    
<!-- 任务调度工厂类 -->
    
<bean
        
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
        
<!-- 这一部分的配置不用管 -->
        
<property name="quartzProperties">
            
<props>
                
<prop key="org.quartz.threadPool.class">
                    org.quartz.simpl.SimpleThreadPool
                
</prop>
                
<prop key="org.quartz.threadPool.threadCount">10</prop>
                
<prop key="org.quartz.threadPool.threadPriority">
                    5
                
</prop>
                
<prop
                    
key="org.quartz.threadPool.threadsInheritContextClassLoaderOfInitializingThread">
                    true
                
</prop>

            
</props>
        
</property>
        
<!-- 触发器,可以放一大堆触发器 -->
        
<property name="triggers">
            
<list>
                
<!-- 在这里加 -->
                 
<ref bean="mainTrigger"/>
            
</list>
        
</property>

    
</bean>
</beans>


Let life be beautiful like summer flowers and death like autumn leaves.

posted on 2008-06-11 23:21 Alexwan 阅读(2416) 评论(0)  编辑  收藏 所属分类: J2EE


只有注册用户登录后才能发表评论。


网站导航: