程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA編程入門知識 >> 用JDring設置類似cron的日程提醒

用JDring設置類似cron的日程提醒

編輯:JAVA編程入門知識

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> 


  UNIX操作系統用cron守護進程來在特定的時間和日期運行腳本。Java Development Kit (JDK) 1.3的java.util.Timer類答應開發者設置每隔N毫秒執行一些任務,但沒有類似cron的結構來指明一天或一周中的特定時間。
  
  這個缺口現在被JDring包堵上了,它是Olivier Dedieu編寫的一個Java的類似cron的日程安排提醒程序。JDring.zip文件中包含這些部分:
  
  源代碼:這不是必需的,可以不管它。
  Javadoc文檔:把這個放到你的docs目錄中去。
  Jar文件:這個文件包含編譯好的類,要把它放到你的classpath中去。
  使用JDring有兩步。第一步要創建一個AlarmListener,這是一個包含一個方法的接口:
  
  void handleAlarm(AlarmEntry entry);
  
  AlarmEntry參數提供了日程提醒設置在什麼時刻的細節。下面是使用AlarmListener的一個簡單例子:
  import com.jalios.jdring.AlarmEntry;
  import com.jalios.jdring.AlarmListener;
  
  public class Buzzing implements AlarmListener {
  
  private String buzz;
  
  public Buzzing(String buzz) {
  this.buzz = buzz;
  }
  
  public void handleAlarm(AlarmEntry entry) {
  System.err.println("滴零零……");
  System.err.println(buzz);
  }
  
  }
  使用JDring的第二步是通知一個中心治理者AlarmListener應該在什麼時候響鈴。這個治理者是AlarmManager的一個實例,它有一個空的構造器。在特定時刻調用日程提醒和cron類似,像下面這樣:
  AlarmManager.addAlarm(minute, hour, day of month, month, day of week, year,
  AlarmListener)
  下面的示例代碼示范了一個設置成在每個小時的第20分鐘開始響鈴的日程提醒:
  import com.jalios.jdring.AlarmManager;
  import com.jalios.jdring.PastDateException;
  
  public class SetAlarm {
  
  static public void main(String[ ] args) {
  AlarmManager mgr = new AlarmManager( );
  mgr.addAlarm(20, -1, -1, -1, -1, -1, new Buzzing( ));
  }
  
  }
  這個例子示范了如何設置在每個星期五的下午五點提醒:
  manager.addAlarm(00, 17, -1, -1, Calendar.FRIDAY, -1, new Buzzing());
  // java.util.Calendar
  JDring還可以用來記住一個周年紀念日,像下面這樣:
  manager.addAlarm(00, 12, 20, Calendar.MARCH, -1, -1,
  new Buzzing("記住明天是周年紀念!") );


 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved