Spring.NET學習筆記25——整合Quartz.NET(應用篇)

  Quartz.NET是一個開源的作業調度框架,是OpenSymphony Quartz API.NET移植,它用C#寫成,可用於WinFormASP.NET應用中。它提供了巨大的靈活性而不犧牲簡單性。你能夠用它來爲執行一個作業而創建簡單的或複雜的調度。它有很多特徵,如:數據庫支持,集羣,插件,支持cron-like表達式等等。 
      你曾經需要應用執行一個任務嗎?這個任務每天或每週星期二晚上1130,或許僅僅每個月的最後一天執行。一個自動執行而無須干預的任務在執行過程中如果發生一個嚴重錯誤,應用能夠知到其執行失敗並嘗試重新執行嗎?你和你的團隊是用.NET編程嗎?如果這些問題中任何一個你回答是,那麼你應該使用Quartz.NET調度器。 Quartz.NET允許開發人員根據時間間隔(或天)來調度作業。它實現了作業和觸發器的多對多關係,還能把多個作業與不同的觸發器關聯。整合了 Quartz.NET的應用程序可以重用來自不同事件的作業,還可以爲一個事件組合多個作業。
  Quartz.NET使用TriggerJobJobDetail對象的組合來實現工作調度,可以參考博客:http://www.cnblogs.com/shanyou/archive/2007/08/25/QuartzNETtutorial.html 

  Spring.NET現在已經支持了Quartz.NET,在以後的開發中我們僅需要配置一下屬性就能輕鬆使用Quartz.NET
  

  Spring.NET提供了QuartzJobObject基類,該類繼承IJob接口。實現一個Job我們可以繼承該類。或者配置Spring.NET提供的MethodInvokingJobDetailFactoryObject對象。而實現JobDetail則使用Spring.NET提供的JobDetailObject類。另外Spring.NET爲我們提供了兩種TriggerSpring.Scheduling.Quartz.SimpleTriggerObjectSpring.Scheduling.Quartz.CronTriggerObject

 

 

  以下是兩種Trigger的例子

 

  運行效果:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章