<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 閱讀(4509) 評論(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| 噼里啪啦免费观看高清动漫4| 日韩高清免费观看| 亚洲AV综合色区无码二区爱AV| 99精品视频免费观看| 婷婷精品国产亚洲AV麻豆不片 | 99re在线视频免费观看| 亚洲精品国产成人片| 三年片在线观看免费| 久久夜色精品国产亚洲| 久久国产免费一区| 亚洲黄网在线观看| 精品免费人成视频app | 亚洲精品无码久久久久去q| 国产黄在线观看免费观看不卡| 超清首页国产亚洲丝袜| 99久久成人国产精品免费| 久久久久亚洲AV成人无码| 波多野结衣在线免费观看| 亚洲中文字幕无码mv| 暖暖在线日本免费中文| 污视频网站免费观看| 日韩va亚洲va欧洲va国产| 久久久久久曰本AV免费免费| 最新亚洲春色Av无码专区| 国产成人精品免费直播| 一级毛片aa高清免费观看| 亚洲国产精品第一区二区 | 免费观看一级毛片| 又黄又大的激情视频在线观看免费视频社区在线 | 亚洲国产成人久久一区WWW| 久久国产精品免费一区二区三区| 亚洲人成电影在在线观看网色| 久久经典免费视频| 国产精品亚洲专区一区| 亚洲国产成人一区二区三区| 免费三级毛片电影片| 国产精品99爱免费视频| 亚洲欧洲国产成人精品|