我的漫漫程序之旅

          專注于JavaWeb開發
          隨筆 - 39, 文章 - 310, 評論 - 411, 引用 - 0
          數據加載中……

          Quartz中SimpleTrigger的探討

          讓我們繼續用第一個例子中StringTest.
          1.來寫一個每隔10秒啟動一次任務的例子.

          import java.util.Date;

          import org.quartz.JobDetail;
          import org.quartz.Scheduler;
          import org.quartz.SchedulerFactory;
          import org.quartz.SimpleTrigger;
          import org.quartz.impl.StdSchedulerFactory;

          public class SimpleTriggerTest
          {

              
          public static void main(String[] args) throws Exception
              
          {
                  SchedulerFactory schedulerFactory 
          = new StdSchedulerFactory();
                  Scheduler scheduler 
          = schedulerFactory.getScheduler();
                  
          // 系統當前時間10秒后
                  long startTime = System.currentTimeMillis() + 10000L;
                  SimpleTrigger trigger 
          = new SimpleTrigger("myTrigger"nullnew Date(
                          startTime), 
          null00L);

                  JobDetail jobDetail 
          = new JobDetail();
                  jobDetail.setJobClass(StringTest.
          class);
                  jobDetail.setName(
          "test");
                  jobDetail.setGroup(
          "A");

                  scheduler.scheduleJob(jobDetail, trigger);
                  scheduler.start();
              }

          }



          2.創建一個觸發器,立即啟動,每隔60秒,啟動一次.
          SimpleTrigger trigger = new SimpleTrigger("myTrigger",
                                                      
          null,
                                                      
          new Date(),
                                                      
          null,
                                                      SimpleTrigger.REPEAT_INDEFINITELY,
                                                      
          60L * 1000L);
          3.創建一個觸發器,立即啟動.從現在開始的第10秒到第40秒重復運行.
          long endTime = System.currentTimeMillis() + 40000L;

            SimpleTrigger trigger 
          = new SimpleTrigger("myTrigger",
                                                      
          "myGroup",
                                                      
          new Date(),
                                                      
          new Date(endTime),
                                                      SimpleTrigger.REPEAT_INDEFINITELY,
                                                      
          10L * 1000L);
          4.創建一個觸發器,在2008年5月9日,上午10點半執行,重復5次,每隔30秒一次.
          java.util.Calendar cal = new java.util.GregorianCalendar(2008, cal.MARCH, 9);
            cal.set(cal.HOUR, 
          10);
            cal.set(cal.MINUTE, 
          30);
            cal.set(cal.SECOND, 
          0);
            cal.set(cal.MILLISECOND, 
          0);

            Data startTime 
          = cal.getTime()

            SimpleTrigger trigger 
          = new SimpleTrigger("myTrigger",
                                                      
          null,
                                                      startTime,
                                                      
          null,
                                                      
          5,
                                                      
          30L * 1000L);

          仔細體會SimpleTrigger的例子,你會發現用這個制作執行計劃會更簡單方便.

          posted on 2008-05-08 17:01 々上善若水々 閱讀(12521) 評論(0)  編輯  收藏 所屬分類: opensource

          主站蜘蛛池模板: 本溪市| 翁牛特旗| 凌海市| 黄浦区| 油尖旺区| 镇安县| 铁岭县| 佛学| 浦江县| 武鸣县| 麻阳| 开化县| 登封市| 新余市| 漠河县| 梅河口市| 文水县| 新乐市| 苗栗县| 高要市| 赣榆县| 宜兰县| 来宾市| 通化县| 拉萨市| 封丘县| 山西省| 西安市| 浮梁县| 石屏县| 固阳县| 巫溪县| 体育| 张家港市| 麻江县| 景洪市| 沾益县| 龙陵县| 昆明市| 娄底市| 那坡县|