<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

    常用鏈接

    統(tǒng)計

    develop

    news

    最新評論

    quartz 詳解

             最近在開發(fā)的過程中,經(jīng)常要使用系統(tǒng)自動清零的操作,比如說:系統(tǒng)在給定的時間跟客戶發(fā)送電子郵件,在指定的時間段內(nèi)執(zhí)行某些操作等等,如果我們只是人工去操作的話不但步驟非常的麻煩而且覺得這是一個工作量非常大的任務(wù),有了quartz框架以后我們所有的任務(wù)多可以交給它去做,程序員唯一要做的只是編寫代碼并配置一下程序就OK了,這樣大大提高了開發(fā)速度和工作效率.配置步驟如下:
    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表示間斷啟動時間  ?表示執(zhí)行間隔時間  13啟動時間-->
                      <cron-expression>0 1/2 23 * * ?</cron-expression>
                      <!--每月1號0點執(zhí)行
                       <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);

    }
    }
    出下以下結(jié)果表示配置成功:
    test
    4、此步驟是最后一步也是最重要的一步,只要加入如下代碼的到/WEB-INF/web.xml文件中在指定的時間內(nèi)就會執(zhí)行系統(tǒng)調(diào)度.
    <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>

    參考網(wǎng)站:http://www.iocblog.net/project/quartz.html

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

    評論

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

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

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

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

    主站蜘蛛池模板: 久久精品国产亚洲av影院| 亚洲成a人片在线播放| 久久伊人亚洲AV无码网站| 亚洲AV成人无码天堂| 永久免费AV无码网站国产| 国产免费牲交视频| 色天使亚洲综合在线观看| 99久久免费精品视频| 国产亚洲精品资源在线26u| 日韩一区二区三区免费播放| 免费毛片在线视频| 亚洲AV日韩综合一区尤物| 6080午夜一级毛片免费看6080夜福利 | 久久精品毛片免费观看| 国产成人亚洲精品91专区手机| 中国china体内裑精亚洲日本| 污视频在线免费观看| 亚洲AV无码一区二区三区系列| 久久精品成人免费国产片小草| 亚洲?V无码成人精品区日韩| 日韩亚洲翔田千里在线| 国产精品免费_区二区三区观看| 亚洲人成人伊人成综合网无码| 成年女人18级毛片毛片免费观看| 亚洲成人黄色网址| 亚洲人成在线免费观看| 亚洲福利视频网址| 国产成人免费高清激情明星| 亚洲香蕉久久一区二区| 青苹果乐园免费高清在线| 亚洲日本久久久午夜精品| 免费人成网站在线观看10分钟| 亚洲一卡2卡3卡4卡国产网站| 国产成人午夜精品免费视频| 国产亚洲sss在线播放| 免费看片A级毛片免费看| 免费亚洲视频在线观看| 久久激情亚洲精品无码?V| 色www永久免费网站| 亚洲国产精品线在线观看| 最近中文字幕无免费|