小石頭
          Excellence in any department can be attained only by the labor of a lifetime; it is not to be purchased at a lesser price.
          posts - 91,comments - 22,trackbacks - 0

          ?

          ?1 /**
          ?2 ?*?<p>文件名稱:?HelloJob.java?</p>
          ?3 ?*?<p>文件描述:?quartz?之?helloWorld</p>
          ?4 ?*?<p>版權所有:?版權所有(C)2001-2004</p>
          ?5 ?*?<p>公????司:?</p>
          ?6 ?*?<p>內容摘要:?無</p>
          ?7 ?*?<p>其他說明:?無</p>
          ?8 ?*?<p>創建日期:2007-1-11</p>
          ?9 ?*?<p>完成日期:2007-1-11</p>
          10 ?*?<p>修改記錄1:?//?修改歷史記錄,包括修改日期、修改者及修改內容</p>
          11 ?*?<p>資源?quartz:?? http://www.opensymphony.com/quartz
          12 ?*?<pre>
          13 ?*????修改日期:
          14 ?*????版?本?號:
          15 ?*????修?改?人:
          16 ?*????修改內容:
          17 ?*?</pre>
          18 ?*?<p>修改記錄2:…</p>
          19 ?*? @version ?1.0
          20 ?*? @author ?yangwei
          21 ? */

          22
          23 import ?java.text.ParseException;
          24
          25 import ?org.apache.log4j.PropertyConfigurator;
          26 import ?org.quartz. * ;
          27 ?? public ? class ?HelloJob? implements ?Job? {
          28 ???? public ?HelloJob()? {
          29 ????}

          30 ???? public ? void ?execute(JobExecutionContext?context)
          31 ?????? throws ?JobExecutionException
          32 ???? {
          33 ????? // 在這里寫業務處理代碼。什么,你不知道?那你別問我!!:-<
          34 ????????System.out.println( " Hello?World!! " );
          35 ????}

          36 ????
          37 ???? public ? static ? void ?main(String[]?args)? throws ?SchedulerException,?ParseException
          38 ???? {
          39 ????????PropertyConfigurator.configure( " ./log4.properties " );? // 加載log4的配置文件
          40 ????????SchedulerFactory?schedFact? = ? new ?org.quartz.impl.StdSchedulerFactory();
          41 ????????Scheduler?sched? = ?schedFact.getScheduler();? // 獲取調度管理器
          42 ????????JobDetail?jobDetail? = ? new ?JobDetail( " myJob " ,?sched.DEFAULT_GROUP,?HelloJob. class ); // 創建工作
          43 ????????CronTrigger?trigger? = ? new ?CronTrigger( " myTrigger " ,? " test " ,? " 0/10?*?*?*?*?? " ); // 創建觸發器,“0/10?*?*?*?*??”表示每10秒鐘就執行一次,有關表達式的說明請參閱quartz的api文檔。
          44 ????????sched.scheduleJob(jobDetail,?trigger);? // 添加到調度管理器中
          45 ????????sched.start(); // 啟動調度管理器
          46 ????}

          47 ??}

          48
          49



          #log4j.properties

          ?

          log4j.rootLogger=debug, A1 , B1

          #RollingFileAppender

          log4j.appender.A1=org.apache.log4j.RollingFileAppender

          log4j.appender.A1.File=log.txt

          log4j.appender.A1.MaxFileSize=100KB

          log4j.appender.A1.MaxBackupIndex=1

          log4j.appender.A1.layout=org.apache.log4j.PatternLayout

          log4j.appender.A1.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n

          #backup need:debug, A1 ,R

          #log4j.appender.R=org.apache.log4j.RollingFileAppender

          #log4j.appender.R.File=backup.log

          #log4j.appender.R.MaxFileSize=100KB

          #log4j.appender.R.MaxBackupIndex=1

          #log4j.appender.R.layout=org.apache.log4j.TTCCLayout

          ?

          #ConsoleAppender

          log4j.appender.B1=org.apache.log4j.ConsoleAppender

          log4j.appender.B1.layout=org.apache.log4j.PatternLayout

          log4j.appender.B1.layout.ConversionPattern=%-4r %-5p [%t] %37c %3x - %m%n

          log4j.appender.B1.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n

          CronTrigger? 的用法 :

          org.quartz
          Class CronTrigger

          				java.lang.Object
          				extended by
          				org.quartz.Trigger
          				extended by
          				org.quartz.CronTrigger
          		
          All Implemented Interfaces:
          Cloneable, Comparable, Serializable

          public class CronTrigger
          extends Trigger

          A concrete Trigger that is used to fire a JobDetail at given moments in time, defined with Unix 'cron-like' definitions.

          For those unfamiliar with "cron", this means being able to create a firing schedule such as: "At 8:00am every Monday through Friday" or "At 1:30am every last Friday of the month".

          The format of a "Cron-Expression" string is documented on the CronExpression class.

          Here are some full examples:

          Expression ? Meaning
          "0 0 12 * * ?" ? Fire at 12pm (noon) every day
          "0 15 10 ? * *" ? Fire at 10:15am every day
          "0 15 10 * * ?" ? Fire at 10:15am every day
          "0 15 10 * * ? *" ? Fire at 10:15am every day
          "0 15 10 * * ? 2005" ? Fire at 10:15am every day during the year 2005
          "0 * 14 * * ?" ? Fire every minute starting at 2pm and ending at 2:59pm, every day
          "0 0/5 14 * * ?" ? Fire every 5 minutes starting at 2pm and ending at 2:55pm, every day
          "0 0/5 14,18 * * ?" ? Fire every 5 minutes starting at 2pm and ending at 2:55pm, AND fire every 5 minutes starting at 6pm and ending at 6:55pm, every day
          "0 0-5 14 * * ?" ? Fire every minute starting at 2pm and ending at 2:05pm, every day
          "0 10,44 14 ? 3 WED" ? Fire at 2:10pm and at 2:44pm every Wednesday in the month of March.
          "0 15 10 ? * MON-FRI" ? Fire at 10:15am every Monday, Tuesday, Wednesday, Thursday and Friday
          "0 15 10 15 * ?" ? Fire at 10:15am on the 15th day of every month
          "0 15 10 L * ?" ? Fire at 10:15am on the last day of every month
          "0 15 10 ? * 6L" ? Fire at 10:15am on the last Friday of every month
          "0 15 10 ? * 6L" ? Fire at 10:15am on the last Friday of every month
          "0 15 10 ? * 6L 2002-2005" ? Fire at 10:15am on every last friday of every month during the years 2002, 2003, 2004 and 2005
          "0 15 10 ? * 6#3" ? Fire at 10:15am on the third Friday of every month

          Pay attention to the effects of '?' and '*' in the day-of-week and day-of-month fields!

          NOTES:

          • Support for specifying both a day-of-week and a day-of-month value is not complete (you'll need to use the '?' character in on of these fields).
          • Be careful when setting fire times between mid-night and 1:00 AM - "daylight savings" can cause a skip or a repeat depending on whether the time moves back or jumps forward.

          Author:
          Sharada Jambula, James House, Contributions from Mads Henderson
          posted on 2007-01-11 09:47 小石頭 閱讀(567) 評論(0)  編輯  收藏 所屬分類: 每天學一點
          主站蜘蛛池模板: 凌云县| 镇雄县| 高平市| 清新县| 东辽县| 玛纳斯县| 定兴县| 天全县| 太仆寺旗| 广东省| 吴江市| 道孚县| 定兴县| 哈密市| 兰坪| 富蕴县| 黎城县| 富裕县| 盘锦市| 宁城县| 汾西县| 乐陵市| 怀来县| 新竹县| 双桥区| 修武县| 房山区| 赤壁市| 大名县| 桐梓县| 湖口县| 噶尔县| 承德市| 福鼎市| 海原县| 竹北市| 普洱| 安塞县| 哈巴河县| 娄烦县| 平定县|