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

          主站蜘蛛池模板: 策勒县| 汕尾市| 宜黄县| 神池县| 山西省| 台东县| 永吉县| 安顺市| 密山市| 巴青县| 沁源县| 怀远县| 靖西县| 永善县| 金昌市| 定州市| 乌拉特后旗| 通渭县| 孟村| 同心县| 壶关县| 道真| 永德县| 清远市| 永泰县| 丰宁| 罗定市| 临湘市| 商都县| 博乐市| 方城县| 会同县| 北川| 收藏| 宾阳县| 黄梅县| 四平市| 五原县| 长治市| 福清市| 长丰县|