<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Java Blog From WeiChunHua

    Java

    常用鏈接

    統計

    develop

    news

    最新評論

    quartz 詳解

             最近在開發的過程中,經常要使用系統自動清零的操作,比如說:系統在給定的時間跟客戶發送電子郵件,在指定的時間段內執行某些操作等等,如果我們只是人工去操作的話不但步驟非常的麻煩而且覺得這是一個工作量非常大的任務,有了quartz框架以后我們所有的任務多可以交給它去做,程序員唯一要做的只是編寫代碼并配置一下程序就OK了,這樣大大提高了開發速度和工作效率.配置步驟如下:
    1、編寫quartz.properties文件:代碼如下:
    #============================================================================
    # Configure Main Scheduler Properties 
    #============================================================================
    org.quartz.scheduler.instanceName = QuartzScheduler
    org.quartz.scheduler.instanceId = AUTO
    #org.quartz.scheduler.rmi.export = false
    #org.quartz.scheduler.rmi.proxy = false
    #============================================================================
    # Configure ThreadPool 
    #============================================================================
    org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool
    org.quartz.threadPool.threadCount = 4
    org.quartz.threadPool.threadPriority = 5
    #============================================================================
    # Configure Plugins
    #============================================================================
    #org.quartz.plugin.triggHistory.class = org.quartz.plugins.history.LoggingJobHistoryPlugin
    org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.JobInitializationPlugin
    org.quartz.plugin.jobInitializer.fileName = /scheduler/quartz_job.xml
    org.quartz.plugin.jobInitializer.overWriteExistingJobs = false
    org.quartz.plugin.jobInitializer.failOnFileNotFound = true
    org.quartz.plugin.jobInitializer.scanInterval = 10
    org.quartz.plugin.shutdownhook.class = org.quartz.plugins.management.ShutdownHookPlugin
    org.quartz.plugin.shutdownhook.cleanShutdown = true
    #org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore
    2、編寫quartz_job.xml
    <?xml version='1.0' encoding='utf-8'?>
    <quartz>
    <job>
       <job-detail>
         <name>test</name>
         <group>DEFAULT</group>
         <description>testJobhere</description>
         <job-class>scheduler.TestJob</job-class>
         <job-data-map allows-transient-data="true">
          <entry>
           <key>name</key>
           <value>test</value>
          </entry>
        </job-data-map>
      </job-detail>
       <trigger>
                  <cron>
                       <name>testCron</name>
                       <group>DEFAULT</group>
                       <job-name>test</job-name>
                      <job-group>DEFALUT</job-group>
                      <!--x/?  x表示間斷啟動時間  ?表示執行間隔時間  13啟動時間-->
                      <cron-expression>0 1/2 23 * * ?</cron-expression>
                      <!--每月1號0點執行
                       <cron-expression>0 1 0 1 1-12 ?</cron-expression>
                       -->
                  </cron>
            </trigger>
    </job>
    3、編寫java代碼進行測試:
    import org.quartz.Job;
    import org.quartz.JobExecutionContext;
    import org.quartz.JobExecutionException;
    public class ZeroCount implements Job{
        public void execute(JobExecutionContext context) throws JobExecutionException
     {
        String name = context.getJobDetail().getJobDataMap().getString("name");
    System.out.println(name);

    }
    }
    出下以下結果表示配置成功:
    test
    4、此步驟是最后一步也是最重要的一步,只要加入如下代碼的到/WEB-INF/web.xml文件中在指定的時間內就會執行系統調度.
    <servlet>
        <servlet-name>QuartzInitializer</servlet-name>
        <servlet-class>org.quartz.ee.servlet.QuartzInitializerServlet</servlet-class>
        <init-param>
         <param-name>config-file</param-name>
         <param-value>/quartz.properties</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
        <init-param>
         <param-name>shutdown-on-unload</param-name>
         <param-value>true</param-value>
        </init-param>
        <init-param>
         <param-name>start-scheduler-on-load</param-name>
         <param-value>true</param-value>
        </init-param>
    </servlet>

    參考網站:http://www.iocblog.net/project/quartz.html

    posted on 2008-11-21 14:38 sunny spring 閱讀(4511) 評論(2)  編輯  收藏 所屬分類: javaee

    評論

    # re: quartz 詳解 2008-11-21 17:06 隔葉黃鶯

    <!--每月1號0點1分執行
    <cron-expression>0 1 0 1 * ?</cron-expression>   回復  更多評論   

    # re: quartz 詳解 2008-11-24 08:29 congdepeng

    隔葉黃鶯 是quartz 的高手啊 我看過他翻譯的文章  回復  更多評論   

    主站蜘蛛池模板: 91在线免费视频| 九九免费观看全部免费视频| 在线毛片片免费观看| 亚洲人成网站观看在线播放| 色婷婷亚洲一区二区三区| 无人在线观看完整免费版视频| 亚洲日韩中文字幕| 国产精品久久免费| 亚洲精品欧洲精品| 国产成人精品免费视频大全麻豆| 亚洲无人区视频大全| 最新欧洲大片免费在线| 亚洲kkk4444在线观看| 永久免费看bbb| 成年免费a级毛片| 国产亚洲情侣一区二区无| 久久国产乱子伦精品免费强| 图图资源网亚洲综合网站| 很黄很黄的网站免费的| 亚洲H在线播放在线观看H| 免费无码又爽又刺激高潮| 污网站在线观看免费| 亚洲成a人片77777kkkk| 97免费人妻无码视频| 亚洲日韩av无码中文| 亚洲精品高清在线| 日本免费中文视频| 精品亚洲456在线播放| 免费v片在线观看| 嫩草成人永久免费观看| 亚洲精品国产国语| 四虎影库久免费视频| 中国性猛交xxxxx免费看| 亚洲人成电影亚洲人成9999网| 成人黄色免费网址| 日本一区二区在线免费观看 | 亚洲日本在线电影| 久久国产成人精品国产成人亚洲| 免费一区二区三区| 亚洲男同gay片| 亚洲日韩精品一区二区三区|