Spring定時任務(一):SpringTask使用

   背景:在平常開發中,常常會用到任務調度這類程序。實現方法經常使用的有:A. 經過java.util.Timer、TimerTask實現。 B.經過Spring自帶的SpringTask。 C. 經過Spring結合Quartz實現。本文咱們將講述SpringTask的使用入門方法。java

 

  1、配置spa

    A. 引入SpringTask命名空間線程

    B. 開啓Spring註解掃描, 將Bean的建立交由Spring進行管理。用於建立Scheduler聲明component

      <context:component-scan base-package="com.unben.scheduler" />blog

 

    C. 開啓SpringTask註解驅動。做用:識別Task相關注解,如「@Scheduled」開發

      <task:annotation-driven/>博客

 

    D. 建立TreadPoolTaskScheduler實例,並指定該線程池初始大小。it

      <task:scheduler id="taskScheduler" pool-size="5" />io

 

    E. SpringTask的觸發器實現方案有兩種, 一種是基於Cron表達式的CronTrigger觸發器, 另外一種是基於接受固定週期的PeriodicTrigger觸發器。在接下來的步驟2、三中咱們將分別講述兩種觸發器的使用方法入門

 

   2、 接受固定週期的PeriodicTrigger觸發器

    案例1:

    案例2:

    配置詳解:

      ref=任務調度工做類

      method=工做類中具體執行的哪一個方法

      initial-delay=初次調度執行前,延時時長。單位:毫秒

      fixed-delay=上一次調度完成後,延時多少時間,進行下一次調用。單位:毫秒

      fixed-rate=上一次調用開始後,延時多少時間,進行下一次調用。不等待上一次調度完成,單位:毫秒。

 

  3、基於Cron表達式的CronTrigger觸發器

    案例3:

    案例4:

    配置說明:

      Cron語法格式:Seconds Minutes Hours DayofMonth Month DayofWeek。

      如上案例表示:每隔多少秒鐘執行一次。關於的Cron表達式,將在下一篇博客中詳細說明。

相關文章
相關標籤/搜索