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 閱讀(2429) 評論(0)  編輯  收藏 所屬分類: J2EE

          主站蜘蛛池模板: 大埔县| 平乐县| 龙江县| 漳浦县| 镇原县| 肇庆市| 盐津县| 东港市| 颍上县| 金华市| 香格里拉县| 昆山市| 平原县| 溧阳市| 台中县| 广南县| 綦江县| 泌阳县| 稷山县| 油尖旺区| 吉木乃县| 江永县| 财经| 古蔺县| 吐鲁番市| 遂川县| 都兰县| 呼伦贝尔市| 卓尼县| 南丰县| 阳东县| 历史| 石景山区| 昌乐县| 尚志市| 棋牌| 崇州市| 衡阳市| 湘阴县| 克山县| 宁强县|