posts - 40,  comments - 187,  trackbacks - 0

          書接上回,上回說到,我們已經(jīng)將頁面的時間設(shè)置轉(zhuǎn)為了Cron Expression,下面我記錄了時間規(guī)則。

          3) 記錄時間規(guī)則

                我將時間規(guī)則存入數(shù)據(jù)庫中,目的是為了生成歷史日志,也可以存入XML文件中。當(dāng)然您也可以省略此步,直接將轉(zhuǎn)換后的規(guī)則放入相應(yīng)的Quartz trigger中。


          4) 更新任務(wù)觸發(fā)器的時間設(shè)置

          到了關(guān)鍵的一步了,也是最簡單的一步,一個方法就可以實現(xiàn)了。

          首先,我們需要通過trigger的名稱得到一個CronTriggerBean;

          其次,通過trigger的setCronExpression(String cronExp)方法將新的表達(dá)式注入;

          最后,RESCHEDULE THE JOB,OK!

           1     /**
           2      * 自定義定時器調(diào)度時間
           3      *  @param
           triggerName 觸發(fā)器名稱
           4       *  @throws
           Exception 
           5       */

           6      public   void  updateNotificationInterval(String triggerName, String triggerId)
           7              throws  SchedulerException, ParseException 
          {
           8          // 得到trigger

           9         CronTriggerBean trigger  =  (CronTriggerBean) scheduler.getTrigger(
          10
                          triggerName, Scheduler.DEFAULT_GROUP);
          11          // 得到cron expression        

          12         String cronExpression  =  schedulerDAO.getCronExpression(triggerId);
          13          // 設(shè)置trigger的時間規(guī)則

          14         trigger.setCronExpression(cronExpression);
          15          // 重置job

          16         scheduler.rescheduleJob(triggerName, Scheduler.DEFAULT_GROUP, trigger);
          17     }

          18

          至此,目的達(dá)到了,快樂的看著您的任務(wù)在您自定義的時間下快樂的執(zhí)行,您是否也想像'Happy Feet'中那只快樂的企鵝一樣,Show段踢踏呢 ; - D


          PS:忘了說我的Quartz任務(wù)是怎么配置的了,罪過,罪過。

          < bean  id ="compareJob"
                  class
          ="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean" >
                  
          < property  name ="targetObject"  ref ="compareService"   />
                  
          < property  name ="targetMethod"  value ="compare"   />
                  
          < property  name ="concurrent"  value ="false"   />
              
          </ bean >  

              
          < bean  id ="compareTrigger"

                  class
          ="org.springframework.scheduling.quartz.CronTriggerBean" >
                  
          < property  name ="jobDetail"  ref ="compareJob"   />
                  
          < property  name ="cronExpression" >             
                      
          < value > 0 39 16 20 * ? </ value >
                  
          </ property >
              
          </ bean >

          < bean  id ="schedulerFactory"
                  class
          ="org.springframework.scheduling.quartz.SchedulerFactoryBean" >
                  
          < property  name ="triggers" >
                      
          < list >                     
                               < ref  local ="compareTrigger"   />

                      
          </ list >
                  
          </ property >
              
          </ bean >


                                                                                              THE END

          posted on 2007-01-10 16:55 小立飛刀 閱讀(20706) 評論(22)  編輯  收藏 所屬分類: Spring

          FeedBack:
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2007-01-10 17:14 | zip
          good!  回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2007-01-10 17:55 | ajax java group
          感覺有點像 crontab .....  回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2007-01-11 10:19 | 小雪飛刀
          其實Quartz的Cron Expression就是來自Unix中,所以感覺很像crontab命令  回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2007-01-11 18:25 | yy77
          上面這個updateNotificationInterval究竟寫在哪個類里面呢?這個類要在xml里面怎么配置才能夠得到scheduler的對象呢?
          看最后聲明的那部分沒有這個類的部分啊。難道是直接通過context來獲得么?  回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2007-01-15 10:59 | 小雪飛刀
          to yy77

          updateNotificationInterval() 這個方法可以寫在你的業(yè)務(wù)邏輯類中,scheduler對象在這個類中注入就可以用了。如:
          public class SchedulerService {

          private Scheduler scheduler;

          /**
          * @param scheduler The scheduler to set.
          */
          public void setScheduler(Scheduler scheduler) {
          this.scheduler = scheduler;
          }

          public void updateNotificationInterval(...) {
          //...
          scheduler.rescheduleJob(...);
          //...
          }
          }
          在Spring中的配置如下:
          <bean id="schedulerServiceTarget" class="SchedulerService">
          <property name="scheduler" ref="schedulerFactory" />
          </bean>
          而schedulerFactory這個bean我在文章中寫到了
          < bean id ="schedulerFactory"
          class ="org.springframework.scheduling.quartz.SchedulerFactoryBean" >
          < property name ="triggers" >
          < list >
          < ref local ="compareTrigger" />
          </ list >
          </ property >
          </ bean >

          不知道這樣能不能回答你的問題呢,yy77 ?;-)

            回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)[未登錄]
          2007-02-12 16:48 | Spring
          我想請問一下:我都配置好了,程序到了制定的時間會進(jìn)入方法A,我想在進(jìn)入方法A后,就取得< value > 0 39 16 20 * ? </ value >這個值,應(yīng)該怎么實現(xiàn)呢?謝謝
            回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2007-02-12 17:00 | 小雪飛刀
          @Spring
          我理解您的意思是:
          您的Method A中需要用到這個時間,但是不知道從哪里取到。

          我的解決方法是將所有的時間規(guī)則放入數(shù)據(jù)庫中,然后從數(shù)據(jù)庫中讀取最近插入的一個值就是所需時間了。

          不知道這樣能不能回答你的問題。  回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)[未登錄]
          2007-02-13 09:36 | Spring
          感謝您的回答,可能我沒表達(dá)清楚我的意思!我現(xiàn)在的時間是在數(shù)據(jù)庫中,就用您的方法假設(shè),我要定時觸發(fā)這個方法< property name ="targetMethod" value ="compare" /> ,但是這個方法會在不同的時間點多次觸發(fā),比如每月最后1天,每個星期第一天都是觸發(fā)這個方法!我這里可以配置多個時間么?< property name ="cronExpression" >
          < value > 0 39 16 20 * ? </ value >
          </ property > 然后把這個時間值放進(jìn)數(shù)據(jù)庫查詢!謝謝
            回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)[未登錄]
          2007-02-13 15:16 | 過客
          如果找不到調(diào)用的方法一般是什么錯誤?類的名字,方法名在多次查證都是正確的  回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2007-02-13 15:32 | 小雪飛刀
          @過客
          能否把你的配置文件貼出來看看?  回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2007-02-13 15:34 | 小雪飛刀
          @Spring
          我查閱了Quartz的文檔,沒有找到可以為一個Job配置多個value elements的方法,所以有個比較笨的方法是設(shè)置多個Job,讓它們指向同一個Method,按照不同的時間執(zhí)行。
            回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2007-05-22 16:14 | jinhaha
          請問我要是調(diào)用多個方法怎么辦?  回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2007-05-22 17:29 | 小雪飛刀
          @jinhaha

          理論上時可以的。你可以通過加載mutiple propertys達(dá)到調(diào)用多個方法的目的。如:
          <property name="targetMethod">
          <list>
          <value>register</value>
          <value>compare</value>
          </list>
          </property>

          不過我沒有實際實驗過,您可以實驗一下,告訴我結(jié)果 :)
            回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2007-08-10 12:14 | boddi
          thrank you!
            是這樣的,客戶有個需求是可以自己修改任務(wù)的間隔時間的!(這個值是設(shè)置到數(shù)據(jù)庫中的),因為SimpleTriggerBean必須設(shè)置repeatInterval屬性,而這個值因為是保存在數(shù)據(jù)中的,所以我想設(shè)置兩個定時任務(wù)CMSTransformCRMTrigger和ScheduleInfoActionTrigger,ScheduleInfoActionTrigger在CMSTransformCRMTrigger任務(wù)執(zhí)行前觸發(fā):其目的是為CMSTransformCRMTrigger根據(jù)數(shù)據(jù)庫的值設(shè)置其repeatInterval屬性,配置文件如下:
              <bean id="CMSTransformCRMEngine" class="org.springframework.aop.framework.ProxyFactoryBean">
                  
          <property name="targetSource">
                      
          <bean class="org.springframework.aop.target.SingletonTargetSource">
                          
          <constructor-arg>
                              
          <bean class="com.server.business.cms.CMSTransformCRMEngine"/>
                          
          </constructor-arg>
                      
          </bean>
                  
          </property>
                  
          <property name="interceptorNames">
                      
          <list>
                          
          <value>CallContextInterceptor</value>
                      
          </list>
                  
          </property>
              
          </bean>

           
          <bean id="CMSTransformCRMJob" class="org.springframework.scheduling.quartz.JobDetailBean">         
                  
          <property name="jobClass">
                      
          <value>com.wisecrm.server.business.cms.CMSTransformCRMScheduledTask</value>
                  
          </property>    
                  
          <property name="jobDataAsMap">
                      
          <map>
                          
          <entry key="cmsTranCRMEnginer">
                              
          <ref bean="CMSTransformCRMEngine"></ref>
                          
          </entry>
                      
          </map>
                  
          </property>
              
          </bean>
              
               
          <bean id="CMSTransformCRMTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">         
                  
          <property name="jobDetail">
                      
          <ref bean="CMSTransformCRMJob"></ref>
                  
          </property>    
                  
          <property name="startDelay">
                      
          <value>90000</value>
                  
          </property>
                  
          <property name="repeatInterval">
                      
          <value>90000</value>
                  
          </property>
              
          </bean>
              
              
          <bean id="ScheduleInfoAction" class="com.wisecrm.server.business.cms.ScheduleInfoAction">         
                  
          <property name="dataSource" ref="DataSource"/>     
                  
          <property name="scheduler" ref="schedulerFactory"/>     
              
          </bean>
              
              
          <bean id="ScheduleInfoActionFactory" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
                  
          <property name="targetObject" ref="ScheduleInfoAction"/>
                  
          <property name="targetMethod">
                       
          <value>setTaskTimeByPreference</value>
                  
          </property>
                  
          <!--property name="arguments">
                      <list>
                          <ref local="DataSource"/>
                          <ref local="schedulerFactory"/>
                      </list>
                  </property
          -->
                  
          <property name="concurrent" value="false"/>
              
          </bean>
              
              
          <bean id="ScheduleInfoActionTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">         
                  
          <property name="jobDetail">
                      
          <ref bean="ScheduleInfoActionFactory"></ref>
                  
          </property>    
                  
          <property name="startDelay">
                      
          <value>80000</value>
                  
          </property>
                  
          <property name="repeatInterval">
                      
          <value>50000</value>
                  
          </property>
              
          </bean>
              
              
          <bean id="schedulerFactory" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">         
                  
          <property name="triggers">             
                      
          <list>                 
                          
          <ref local="CMSTransformCRMTrigger"/>             
                          
          <ref local="ScheduleInfoActionTrigger"/>             
                      
          </list>         
                  
          </property>
              
          </bean>

          ScheduleInfoAction是動態(tài)設(shè)置間隔時間的接口:
          public class ScheduleInfoAction {

              
          private Scheduler scheduler;

              
          public void setTaskTimeByPreference() throws SchedulerException {
                  
          if (isStartCMSTransformCRMTask()) {
                      SimpleTriggerBean trigger 
          = (SimpleTriggerBean) scheduler.getTrigger("ScheduleInfoActionTrigger",
                                      Scheduler.DEFAULT_GROUP);
                      trigger.setRepeatInterval(Long.parseLong(Application.getSystemSettingService().getPrefValue(
          "CMSPeriod")));
                      scheduler.rescheduleJob(
          "ScheduleInfoActionTrigger",
                              Scheduler.DEFAULT_GROUP, trigger);
                  }
           
          else {
                      scheduler.shutdown();
                  }

              }


              public
           boolean isStartCMSTransformCRMTask() {
                  
          return Application.getSystemSettingService().getPrefValue("CMSPeriod"!= null;
              }


              public
           Scheduler getScheduler() {
                  
          return scheduler;
              }


              public
           void setScheduler(Scheduler scheduler) {
                  
          this.scheduler = scheduler;
              }


          }
            但是不知為和兩個任務(wù)都不執(zhí)行?
          后面我再在程序啟動時就通過ScheduleInfoAction的factoryBean
          設(shè)置CMSTransformCRMTrigger其repeatInterval屬性,只保留一個定時任務(wù)就可以了,
          配置如下:
          <bean id="ScheduleInfoAction" class="com.wisecrm.server.business.cms.ScheduleInfoAction">         
                  
          <property name="scheduler" ref="schedulerFactory"/>     
              
          </bean>
              
              
          <bean id="ScheduleInfoActionFactory" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
                  
          <property name="targetObject" ref="CMSTransformCRMEngine"/>
                  
          <property name="targetMethod">
                       
          <value>run</value>
                  
          </property>
                  
          <property name="concurrent" value="false"/>
              
          </bean>
              
              
          <bean id="ScheduleInfoActionTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">         
                  
          <property name="jobDetail">
                      
          <ref bean="ScheduleInfoActionFactory"></ref>
                  
          </property>    
                  
          <property name="startDelay">
                      
          <value>80000</value>
                  
          </property>
                  
          <property name="repeatInterval">
                      
          <value>80000</value>
                  
          </property>
              
          </bean>
              
              
          <bean id="schedulerFactory" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">         
                  
          <property name="triggers">             
                      
          <list>            
                          
          <ref bean="ScheduleInfoActionTrigger"/>             
                      
          </list>         
                  
          </property>
              
          </bean>
          但總感覺到有點笨拙,你幫忙參考下   回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2007-08-10 14:32 | 小雪飛刀
          @boddi
          首先Scheduler是接口不是類,其次FactoryBean that sets up a Quartz Scheduler, manages its lifecycle as part of the Spring application context, and exposes the Scheduler reference for dependency injection.

          您下面這個配置我不太明白是什么意思?能否把整個配置文件貼出來?
            回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2007-08-11 14:56 | boddi

          thrank you!
            是這樣的,客戶有個需求是可以自己修改任務(wù)的間隔時間的!(這個值是設(shè)置到數(shù)據(jù)庫中的),因為SimpleTriggerBean必須設(shè)置repeatInterval屬性,而這個值因為是保存在數(shù)據(jù)中的,所以我想設(shè)置兩個定時任務(wù)CMSTransformCRMTrigger和ScheduleInfoActionTrigger,ScheduleInfoActionTrigger在CMSTransformCRMTrigger任務(wù)執(zhí)行前觸發(fā):其目的是為CMSTransformCRMTrigger根據(jù)數(shù)據(jù)庫的值設(shè)置其repeatInterval屬性,配置文件如下:

              <bean id="CMSTransformCRMEngine" class="org.springframework.aop.framework.ProxyFactoryBean">
                  
          <property name="targetSource">
                      
          <bean class="org.springframework.aop.target.SingletonTargetSource">
                          
          <constructor-arg>
                              
          <bean class="com.server.business.cms.CMSTransformCRMEngine"/>
                          
          </constructor-arg>
                      
          </bean>
                  
          </property>
                  
          <property name="interceptorNames">
                      
          <list>
                          
          <value>CallContextInterceptor</value>
                      
          </list>
                  
          </property>
              
          </bean>

           
          <bean id="CMSTransformCRMJob" class="org.springframework.scheduling.quartz.JobDetailBean">         
                  
          <property name="jobClass">
                      
          <value>com.wisecrm.server.business.cms.CMSTransformCRMScheduledTask</value>
                  
          </property>    
                  
          <property name="jobDataAsMap">
                      
          <map>
                          
          <entry key="cmsTranCRMEnginer">
                              
          <ref bean="CMSTransformCRMEngine"></ref>
                          
          </entry>
                      
          </map>
                  
          </property>
              
          </bean>
              
               
          <bean id="CMSTransformCRMTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">         
                  
          <property name="jobDetail">
                      
          <ref bean="CMSTransformCRMJob"></ref>
                  
          </property>    
                  
          <property name="startDelay">
                      
          <value>90000</value>
                  
          </property>
                  
          <property name="repeatInterval">
                      
          <value>90000</value>
                  
          </property>
              
          </bean>
              
              
          <bean id="ScheduleInfoAction" class="com.wisecrm.server.business.cms.ScheduleInfoAction">         
                  
          <property name="dataSource" ref="DataSource"/>     
                  
          <property name="scheduler" ref="schedulerFactory"/>     
              
          </bean>
              
              
          <bean id="ScheduleInfoActionFactory" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
                  
          <property name="targetObject" ref="ScheduleInfoAction"/>
                  
          <property name="targetMethod">
                       
          <value>setTaskTimeByPreference</value>
                  
          </property>
                  
          <!--property name="arguments">
                      <list>
                          <ref local="DataSource"/>
                          <ref local="schedulerFactory"/>
                      </list>
                  </property
          -->
                  
          <property name="concurrent" value="false"/>
              
          </bean>
              
              
          <bean id="ScheduleInfoActionTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">         
                  
          <property name="jobDetail">
                      
          <ref bean="ScheduleInfoActionFactory"></ref>
                  
          </property>    
                  
          <property name="startDelay">
                      
          <value>80000</value>
                  
          </property>
                  
          <property name="repeatInterval">
                      
          <value>50000</value>
                  
          </property>
              
          </bean>
              
              
          <bean id="schedulerFactory" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">         
                  
          <property name="triggers">             
                      
          <list>                 
                          
          <ref local="CMSTransformCRMTrigger"/>             
                          
          <ref local="ScheduleInfoActionTrigger"/>             
                      
          </list>         
                  
          </property>
              
          </bean>


          ScheduleInfoAction是動態(tài)設(shè)置間隔時間的接口:

          public class ScheduleInfoAction {

              
          private Scheduler scheduler;

              
          public void setTaskTimeByPreference() throws SchedulerException 
          {
                  
          if (isStartCMSTransformCRMTask()) 
          {
                      SimpleTriggerBean trigger 
          = (SimpleTriggerBean) scheduler.getTrigger("ScheduleInfoActionTrigger
          ",
                                      Scheduler.DEFAULT_GROUP);
                      trigger.setRepeatInterval(Long.parseLong(Application.getSystemSettingService().getPrefValue(
          "CMSPeriod
          ")));
                      scheduler.rescheduleJob(
          "ScheduleInfoActionTrigger
          ",
                              Scheduler.DEFAULT_GROUP, trigger);
                  }
           
          else {
                      scheduler.shutdown();
                  }

              }


              public
           boolean isStartCMSTransformCRMTask() {
                  
          return Application.getSystemSettingService().getPrefValue("CMSPeriod"!= null
          ;
              }


              public
           Scheduler getScheduler() {
                  
          return scheduler;
              }


              public
           void setScheduler(Scheduler scheduler) {
                  
          this.scheduler 
          = scheduler;
              }


          }

            但是不知為和兩個任務(wù)都不執(zhí)行?

          后面我再在程序啟動時就通過ScheduleInfoAction的factoryBean

          設(shè)置CMSTransformCRMTrigger其repeatInterval屬性,只保留一個定時任務(wù)就可以了,

          配置如下:


          <bean id="ScheduleInfoAction" class="com.wisecrm.server.business.cms.ScheduleInfoAction">         
                  
          <property name="scheduler" ref="schedulerFactory"/>     
              
          </bean>
              
              
          <bean id="ScheduleInfoActionFactory" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
                  
          <property name="targetObject" ref="CMSTransformCRMEngine"/>
                  
          <property name="targetMethod">
                       
          <value>run</value>
                  
          </property>
                  
          <property name="concurrent" value="false"/>
              
          </bean>
              
              
          <bean id="ScheduleInfoActionTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">         
                  
          <property name="jobDetail">
                      
          <ref bean="ScheduleInfoActionFactory"></ref>
                  
          </property>    
                  
          <property name="startDelay">
                      
          <value>80000</value>
                  
          </property>
                  
          <property name="repeatInterval">
                      
          <value>80000</value>
                  
          </property>
              
          </bean>
              
              
          <bean id="schedulerFactory" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">         
                  
          <property name="triggers">             
                      
          <list>            
                          
          <ref bean="ScheduleInfoActionTrigger"/>             
                      
          </list>         
                  
          </property>
              
          </bean>


          但總感覺到有點笨拙,你幫忙參考下,為什么repeatInterval不能通過繼承SimpleTriggerBean復(fù)寫getRepeatInterval方法去設(shè)置呢?

            回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2007-08-22 11:36 | kk
          問一下:
          Qest1:rescheduleJob是不是在兩種場景下使用,一是服務(wù)重啟時,一是用戶需要更改任務(wù)的時間規(guī)則(觸發(fā)器)時?

          Qest2:用戶在更改任務(wù)的時間規(guī)則(觸發(fā)器)時,可能還需要任務(wù)已經(jīng)運(yùn)行的狀態(tài)信息。
          場景一:某個任務(wù)從2007/1/1日開始,每天8:30運(yùn)行。到了2007/5/1日,用戶想更改為每天9:00運(yùn)行,新觸發(fā)器設(shè)為2007/1/1,9:00。希望的更新觸發(fā)器后第一次運(yùn)行時間是2007/5/2日 9:00。請問quartz可以做到嗎?
          場景二:某任務(wù)的執(zhí)行次數(shù)為100次,當(dāng)執(zhí)行到30次時,用戶希望把執(zhí)行次數(shù)改為150次,新觸發(fā)器設(shè)為150次,所以任務(wù)還需執(zhí)行150-(100-30)=80次。請問quartz可以做到嗎?  回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2008-10-28 15:28 | 風(fēng)續(xù)飄
          你好,我是剛剛搞開發(fā)不久,想學(xué)習(xí)quartz,你的這個程序的時間是從數(shù)據(jù)庫里來讀取的嗎?能不能把你的表結(jié)構(gòu)發(fā)我看看,感激不盡!  回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2008-10-30 13:17 | 小立飛刀
          @風(fēng)續(xù)飄

          表結(jié)構(gòu)很簡單,只需要key,value兩個字段就可以滿足要求。您也可以采用其他存儲方式,如存入xml中。  回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2009-04-23 18:18 | sunday
          @kk
          你好,我也碰到了你所說的第一種情況,不知您是怎么解決的?  回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)
          2009-04-28 13:33 | 小立飛刀
          @sunday
          什么情況 能否說得詳細(xì)些?
            回復(fù)  更多評論
            
          # re: Spring Quartz如何動態(tài)配置時間(3)[未登錄]
          2009-07-27 16:37 | jim
          這位大哥,請問你的問題解決了嗎,我現(xiàn)在遇到同樣的需求,請問如何實現(xiàn)  回復(fù)  更多評論
            
          <2008年10月>
          2829301234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          生存或毀滅,這是個必答之問題:是否應(yīng)默默的忍受坎苛命運(yùn)之無情打擊,還是應(yīng)與深如大海之無涯苦難奮然為敵,并將其克服。此二抉擇,究竟是哪個較崇高?

          常用鏈接

          留言簿(12)

          隨筆分類(43)

          相冊

          收藏夾(7)

          朋友的博客

          電子資料

          搜索

          •  

          積分與排名

          • 積分 - 302757
          • 排名 - 192

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 无为县| 枞阳县| 遵化市| 新竹市| 梧州市| 新平| 新闻| 苏尼特右旗| 白朗县| 叶城县| 潼南县| 永德县| 安陆市| 沂水县| 平顶山市| 龙泉市| 双城市| 玉屏| 阿坝县| 栾川县| 疏勒县| 济源市| 贺兰县| 南汇区| 延边| 克什克腾旗| 华蓥市| 阿巴嘎旗| 金阳县| 乌什县| 香港 | 蒲城县| 玉树县| 宁化县| 宜丰县| 布拖县| 涪陵区| 宜章县| 怀远县| 天镇县| 灵石县|